Skip to main content

Full text of "Analog Computing Magazine Issue 10 (Super Adventure Games)"

See other formats


NUMBER 10 



$2.50 



fl^FILDKigK^^ 





THE ONLY CHOICE FOR SERIOUS ATARI * OWNERS ! 



^R^OSAIC 



ELECTRONICS, INC. 




forgets: 



MOK THflN JUSTANOnn PREm FACE. 



Says who? Says ANSI. 

Specifically, subcommittee X3B8 of the American 
National Standards Institute (ANSI) says so. The fact 
is all Elephant™ floppies meet or exceed the specs 
required to meet or exceed all their standards. 

But just who is "subcommittee X3B8" to issue such 
pronouncements? 

They're a group of people representing a large, 
well-balanced cross section of disciplines— from 
academia, government agencies, and the computer 
industry. People from places like IBM, Hewlett-Packard, 
3M, Lawrence Livermore Labs, The U.S. Department 
of Defense, Honeywell and The Association of Com- 
puter Programmers and Analysts. In short, it's a bunch 
of high-caliber nitpickers whose mission, it seems, in 
order to make better disks for consumers, is also to 



make life miserable for everyone in the disk-making 
business. 

How? By gathering together periodically (often, 
one suspects, under the full moon) to concoct more 
and more rules to increase the quality of flexible 
disks. Their most recent rule book runs over 20 single- 
spaced pages— listing, and insisting upon— hundreds 
upon hundreds of standards a disk must meet in 
order to be blessed by ANSI. (And thereby be taken 
seriously by people who take disks seriously.) 

In fact, if you'd like a copy of this formidable docu- 
ment, for free, just let us know and we'll send you 
one. Because once you know what it takes to make 
an Elephant for ANSI . . . 

We think you'll want us to make some Elephants 
for you. 



aEPHANT. HEM DUTY nSKS. 

For a free poster-size portrait of our powerful pachydemn, please write us. 

Distributed Exclusively by Leading Edge Products, Inc., 225 Turnpike Street, Canton, Massachusetts 02021 

Call: toll-free 1-800-343-6833; or in Massachusetts call collect (617) 828-8150. Telex 951-624. 



^1 



'^"^■^ 




^•'"""■•'"MlSfti^Ssifc*'^ 



MiitfH 






.^^ 



IT'S DYNAMITE! 



NENA/GAME FROM 

A.N.A.L.O.G 





So you think you're good, huh? Getting a little harder, isn't it? 



! 



OH NO! WIPEOUT!!! 



TM 



While flying your helicopter over a high mountain plateau in Tibet, your nnagnetic detector chatters wildly — you 
have discovered the treasure of a long-lost Sherpa kingdom! 

Quickly equipping your 'copter with explosives, you fly over the plateau and attempt to blast the treasure out, in- 
tending to split the profits with the Sherpa natives. 

But, flying over you in his World War II bomber, the evil Dr. Muta has other plans — he intends for the treasure to 
remain buried — along with you! 

Burled Bucks is a fast action "daredevil" game written entirely in machine language for 1 or2 players. 16K cassette 
or diskette. 

Burled Bucks — the newest game for the ATARI, with great graphics, brilliant colors, dynamite sound effects — 
guaranteedfastaction!!99levelsof play assure long lasting challenge. Will the evil Dr. Mutadefeat you? Will the bucks 
remain buried forever? Don't go for broke — go for the bucks — BURIED BUCKS! 

PLAYING NOW AT FINE COMPUTER STORES EVERYWHERE! 

/^~^\/l^\\/l^n^/n\/l zj\ software 

\ RO. BOX23 

WORCESTER. MA 01603 

(617)892-3488 

ATARI is a trademark o( ATARI. Inc. Buried Bucl^s is a trademark of A.N.A.L.O.G. Software 




YOU'RE GOING TO HAVE FUN 
WITH YOUR ATARI!! 




AND THE FUN GETS ROLLING 
WITH BUG OFF! 

Yikes! The bugs are swarming here, there 
and everywhere and only a strong whiff of DDT 
can put 'em away. The object of the game is to 
control the seven different kinds of pests that are 
running helter-skelter over everything. The Army 
can airlift In more DDT to fill your bug sprayer . . . 
but will they make It in time? 




The action builds to a furious frenzy as an 

awesome assortment of insects attack anything 
and everything in sight. A definite case of "spray 
first and ask questions later." All this and hi-res 
graphics, too! 

16K TAPE 050-0167 $29.95 

32K DISK 052-0167 $29.95 



TUTTI FRUTTI — by Alan Newman 
"GRAPE FUN" FOR THE WHOLE FAMILY! 

Somewhere between Never Never Land and 
next Thursday, there's a wild and wacky place 
where your joystick-controlled "Hungry" snacks on 
an orchard of goodies. But there are some nasty ol' 
bugs who'd just as soon snack on YOU, so look 
sharp and beware. Funtastic action for all ages! 



TUTTI FRUTTI . . . Wow! A crazy cast of 
characters in vivid hi-res color all performing in 
their natural habitat, otherwise known as TUTTI 
FRUTTI Land. Grape fun for ages 6 and up! 

16K TAPE 050-0160 $24.95 

32K DISK 052-0160 $24.95 




dventur6 



INTERNATIONAL 

To order, see your local dealer. If he does not have the program, then ca 

1 ■800-327-71 72 (orders only please) or write for our free catalog. 

Published by ADVENTURE INTERNATIONAL 

a subsidiary of Scott Adams, Inc. 
BOX 3435 • LONGWOOD, FL 32750 • (305) 862-6917 

PRICES SUBJECT TO CHANGE 




"^^^^^i ^T'^"'® '* ^ registered trademark of ATARI, INC., a Warner Communications Company 
and all references to ATARI® s hould be so noted. 




A.N.A.L.O.G. STAFF 

Editors/Publishers 
MICHAEL DESCHENES 
LEE H. PAPPAS 

Managing Editor 
JON A. BELL 

Contributing Editors 
TONY MESSINA 
DR. GARY ROSE 
MARCIA ROSE 

Art Director 
BOB DESI 

Technical Division 
CHARLES BACHAND 
TOM HUDSON 
BRIAN MORIARTY 

Advertising Manager 
MICHAEL DESCHENES 

Distribution 
PATRICK J. KELLEY 

Typography 
HENDRICKX & 

LARRIVEE Co., Inc. 

Production/Distribution 
LORELL PRESS, INC. 

Contributors 
MARSHALL R ADAMS 
TED ADKINSON 
RICHARD A. BENSON 
MICHAEL DUBOY 
KEITH EVANS 
BRAD GRIFFIN 
SOL GUBER 
RICHARD HERRING 
WILLIAM W. HOUGH 
THOMAS M. KRISCHAN 
KEVIN LEVER 
KEN LITKOWSKI 
GREG PECK 
DONALD B. WILCOX 

A.N.A.L.O.G. 
Magazine Corp. is in no way 
affiliated with ATARI. 
ATARI is a trademark of 
ATARI, Inc. 



FEATURES/ARTICLES 

The ATARI 1200XL Lee Pappas 32 

Accessing Bulletin Board Systems William W. Hough 49 

The Challenge of the Quest Brad Griffin 56 

Adventure Games Chart Brad Griffin 59 

Epson Printing Modes Thomas M. Krischan 61 

A Lisp Tutorial Ken Litkowski 85 

The Percom Drive w/ith Double-Sided Disks Kevin Lever 92 

Installing Your Own GTIA Chip Richard Herring 94 

Beginner's Pilot Thomas M. Krischan 113 

REVIEWS/PROFILES 

Wayout Brian Moriarty 18 

B Key 400 Richard A. Benson 20 

Scott Adams Adventures 1-12 Brad Griffin 98 

PROGRAM LISTINGS 

utility #4: Disk Directory Dump Tony Messina 23 

D:CHECK 2 jom Hudson 26 

Magic Keypad Greg Peck 28 

An Adventure Game Michael Duboy 44 

A Master File Directory Using DMS Marshall D. Abrams 64 

Simple P/M Assembly Language Luke Lorusso 68 

Moving Players in BASIC Tom Hudson 73 

The Halls of the Keith Evans and 

Leprechaun King Ted Adkinson 79 

Fill 'Er Up! Tom Hudson 100 

Word Square Sol Guber 110 

COLUMNS 

Editorial jon Bell 6 

Reader Comment q 

New Products The Program Doctors 14 

Index to Advertisers ng 



A.N.A.L.O.G. COMPUTING (ISSN 0744-9917) is published bi-monthly for $14 per year 
by A.N.A.L.O.G. Magazine Corp., 565 Main Street, Cherry Valley, MA 01611, Tel. (617) 
892-3488. Second-class postage paid at Worcester, MA and additional mailing offices. | 
POSTMASTER: Send address changes to A.N.A.L.O.G. COMPUTING, RO. Box 615, 
Holmes, PA 19043. No portion of this magazine may be reproduced in any form without I 
written permission of the publisher. Program listings should be provided in printed form, f 
Articles should be furnished as typed copy in upper and lower case with double spacing. By 
submitting articles to A.N.A.L.O.G. COMPUTING, authors acknowledge that such | 
materials, upon acceptance for publication, become the exclusive property of A. N. A. L. O. G. 
If not accepted for publication, the articles and/or programs will remain the property of the I 
author. If submissions are to be returned, please supply self addressed, stamped envelope. 

Contents copyright ® 1983 A.N.A.L.O.G. Magazine Corp. 



PAGE 6 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 







by Jon Bell 



This issue's editorial deals with bits and pieces. A 
lot has occurred since A.N.A.L.O.G. No. 9, so I 
want to mention a number of things concerning this 
issue, as well as what you're likely to see in our pages 
in the near future. 

Whither ATARI Follow-up 

The response to the editorial in the last issue has 
been overwhelming. "Whither ATARI?" seemed to 
have touched a nerve among many ATARI owners, 
as well as from companies manufacturing ATARI 
software (see Reader Comment, page eight). Not 
surprisingly (to us), there was no response from 
anyone at ATARI, even though dozens of people at 
ATARI receive A.N.A.L.O.G. If we receive any 
word from the creators of our favorite home 
computers, we'll be sure to let you know. 

There is a point that I'd like to clear up concerning 
the origins of "Whither ATARI?" The gentleman 
who wrote the editorial wrote it in conjunction with 
the editors of the Portland ATARI Club newsletter 
of Portland, Oregon. The editorial originally 
appeared in the October, 1982 edition of the P. A.C. 
newsletter. Due to a mutual misunderstanding, the 
credit for the article reprint was not given. For this I 
would like to apologize. The author's name was 
withheld at his request. I hope that the increased 
exposure of our thoughts, so well expressed in 
"Whither ATARI?", will in some manner influence 
the way ATARI sees its products — and the people 
who buy them. 

The Reader's Poll 

At the time of this writing, it's still too early to 
announce the winners of our free cassette and disk 
subscriptions, or the winner of the Favorite 
Program/ Article Contest. By the time you read this, 
however, we will have picked the winners of both, 
and will have contacted them. The Reader's Poll 
cards have been pouring in at the rate of hundreds 
per week, and the preliminary results have been very 
interesting. The final results of all cards received will 
be given in the next issue, but I can mention the 
changes that we will be implementing in 
A.N.A.L.O.G., starting in this issue. In other 
words, you asked for it, you got it! Generally, our 
readers would like to see: 



. . . more reviews of both hardware and 
software, with plenty of pictures. Our 
readers have indicated that they want to 
read tough, no-holds-barred reviews of 
ATARI products before spending their 
money. 

. . . more beginner's programs in both 
BASIC and Assembly language. 

. . .an increased emphasis on 
educational and business software. 

. . .how to access bulletin board 
systems. 

. . . and, not surprisingly, at least two 
games per issue. 
Well, if you scan this issue, you can see that we 
have a great deal of reviews with pictures, a 
beginner's player/missile graphics article, an article 
on how to access bulletin board systems, and three 
games, including a super Assembly-language game 
from Tom Hudson, author of "Graphic Violence!", 
A.N.A.L.O.G. No. 8. Fans of a certain coin-op 
arcade game should get plenty of kicks from it. 

The A.N.A.L.O.G. Compendium 

First, the bad news. We have a very limited 
number of back issues still available. The only issues 
available are no.'s 2,7, and 8. When these are gone, 
that's it. No back issue of A.N.A.L.O.G. will be 
reprinted, so those of you who have all the back 
issues should consider them collector's items. Now, 
the good news. We are going to be publishing, 
sometime in spring. The A.N.A.L.O.G. Com- 
pendium, a large-format book which will contain 
the best articles and programs from the first 10 issues 
of A.N.A.L.O.G. Computing. The Compen- 
dium will contain utilities, games, tutorials and 
demo programs. It will be available in your local 
computer store, or you can order it direct from us. 
However, please do not call us until we have an- 
nounced shipment in the magazine. We are not 
accepting advance orders now, so please be patient. I 
think you'll like it. D 

The staff of A. hi. A. L. O. G. would like to thank the staff 
of The Higgins Armory Museum for alio^ving us the use 
of their facilities for the production of this issue. 



ADD A FLOPPY DISK TO YOUR ATARI* 
m FOR LESS THAN $450 "» 



Now Atari* users can upgrade to 5" or 8" floppy 
disks at an affordable price with MICRO MAIN- 
FRAME. 

Micro Mainframe, ttie premier manufacturer of low 
cost add on peripherals for the TRS-80 computer, 
is proud to announce our lineup of products for the 
Atari* computer. Micro Mainframe is not a new- 



comer to the computer marketplace, as we have 
been supplying quality disk drives for the TRS-80* 
for three years. We now bring our expertise to the 
Atari* market and pledge to provide the highest 
quality peripherals at the lowest price. 

Our floppy disk drive is designed to sell for under 
$450, and check out the features: 



Low Initial cost includes one disk drive and controller 
' Single and Double Density operation STANDARD 
Additional drives available for under $200 

• Controller features a proprietary digital phase lock loop data separator for unparalleled reliability 

• Operates 8" disk drives with our MaxiDos A operating system (AVAILABLE MID-ig83) 

• Intermix 5" and 8" disk drives with MaxiDos A 

• Includes a parallel printer port to allow the use of low cost printers 

• Expandable to include hard disk operation (requires expansion chassis and host adapter) 

• Includes a SWITCHING POWER SUPPLY that is capable of running two disk drives 

• Can be used in conjunction with other Micro Mainframe peripherals 



The expensive Atari* 810 disk drive includes a 
costly disk controller and power supply for each 
drive. This is wasteful as one controller can easily 
control up to four disk drives. With a MICRO 
MAINFRAME drive, you pay only once for the disk 
controller. To add a second disk drive, you merely 
purchase a disk drive and case. The power supply 
in your first drive will power an additional disk 
drive. Other manufacturers use cheap linear 
power supplies which generate considerable heat 
that can shorten the life of your electronic equip- 
ment. 



ADD A DISK DRIVE TO YOUR 
ATARI* FOR LESS THAN $90 

If you already own a TRS-80 Model-Ill*, you can 
use your Model-Ill* as an intelligent disk controller 
with the addition of our CONNECTION A™. This 
peripheral connects between the 50 pin expansion 
bus on the Model-Ill* computer and the Atari* 400 
or 800 computer. After loading the supplied soft- 
ware package, your Model-Ill* computer thinks 
that it is an Atari* disk drive and you can read and 
write Atari* diskettes on your Model-Ill* for less 
than $90. 



Dealer Inquiries are Solicited 

MICRO MAINFRAME 

11325 Sunrise Gold Circle 

Building E 

Rancho Cordova, CA 95670 

(916)635-3997 



A.N.A.L.O.G. COMPUTING 




Al 



r 
k 



_ llTi I k?i I 

"J L i I L i 1 n 




Due to the response from "Whither 
ATARI?" this issue's Reader Com- 
ment section has been considerably 
expanded, so our readers can voice 
their opinions unedited. 

Dear Editor: 

In response to your request for 
comment the following is sub- 
mitted. I happen to be one of the 
many who bought an ATARI 
during the July- August 1981 
crest. Your comments are right on 
the button. It has amazed me at the 
apparent lack of marketing for 
what I think is the most versatile 
system available to the home 
market. Having been in the 
computer field since 1963, using 
the ATARI 800 is a real pleasure 
even after coming home from 
working on Univacs, DEC's, 
Harris and Honeywell systems. 

When telling someone you 
have a computer at home the first 
problem you experience as you 
say "ATARI" is the game 
syndrome. ATARI'S image as a 
game machine is fixed in most 
peoples' minds because this is all 
they see advertised. 

One of the comments I have 
heard dealer's make who carried 
ATARI but were dropping the line 
is lack of support or slow delivery 
of orders. One dealer here in 
Charleston said he thought that if 
you carried several other 
competitive systems you did not 
get the support from ATARI. 
Again the image problem appears. 
ATARI is not an Apple nor a 
TRS-80. The personal computer 
market is now flooding with 
choices. I believe ATARI is 
missing the chance to grab the bull 
by the horns and become iden- 
tified as the "Home Computer". 
Most of the current systems are 



really personal computers de- 
signed to be sold first as a aid to 
business with home applications 
being secondary. The new Com- 
modore and the Zenith (among) 
others) are truly small business 
systems being sold as personal 
computers. Witness IBM PC, the 
"Cadillac," is not advertised as an 
entertainment system. The answer 
lies with ATARI. We as owner's 
can brag, show off our system and 
have the best of each world, but if 
the image problem is not reversed 
the rest of the industry will leave 
ATARI behind. 

Thank goodness for the third 
party software. I have watched 
ATARI drop what I thought 
would have been a good product 
line not to mention the software 
which is really where profit comes 
from. 

I believe ATARI needs to 
correct an image problem and 
then market the "Home Com- 
puter" as an answer to those 
out there who don't want a 
business system. Comparison of 
the cost alone for the true home 
user should sell ATARI if it were 
marketed properly. 

Thanks for listening. 

Sincerely, 

Martin T. Foley 

Moncks Corner, 

South Carolina 



Editor: 

Your "Whither ATARI?" 
editorial in issue #9 was an act of 
courage. You risked advertising 
revenues and support from 
ATARI'S parent, Warner Com- 
munications, by asking the 
important question: "WTiy is 
ATARI trying to sell and support 
their wonderful 400/800 home 
computers like throwaway toys?" 



That's a question troubling most 
all of us faithful ATARI computer 
users. 

Early in December, Wall Street 
investors revolted against 
Warner's stock when news leaked 
that ATARI had lost its sales lead 
in the home computer market and 
was in danger of losing its near- 
total domination of the home 
video game market as well. While 
Warner pointed its finger to its 
errant ATARI Division as the 
culprit for a disappointing 
earnings statement, the true focus 
of both Warner's overall and 
ATARI'S specific problems 
should have been aimed at the 
boardroom of Warner itself. 

When Warner Communica- 
tions purchased ATARI a few 
years ago, Warner had no real 
experience in marketing high 
technology products. Warner's 
holdings in the movie, TV and 
recording industries naturally 
make them entertainment special- 
ists, and with ATARI producing 
the hottest new wave in entertain- 
ment, video games, it seemed a 
natural fit as another cog in their 
corporate wheel. But since the 
merger, ATARI has grown so fast 
and so large that it has become too 
complex for Warner's show-biz 
moguls to handle. Warner's 
control of ATARI is analogous to 
an old Douglas DC-3 pilot being 
given command of a Concorde. 

Warner's installation of the 
Harvard Business School type of 
corporate political structure at 
ATARI marked the beginning of 
their problems with the division. 
Creative design and software 
engineers who were weaned on 
Nolan Bushnell's entrepre- 
neurial spirit at the old ATARI 
chafed under the new Warner- 
installed regimen of MBA 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 9 



executives, committee decisions 
and anything-for-the-bottom-line 
philosophy at the new ATARI. 
Many of them departed to form 
new companies or joined com- 
petitors. Some of the better 
engineer-businessmen from 
ATARI went on to form formid- 
ible competitors to their former 
employer such as Activision and 
Imagic. 

Warner's answer to the burning 
question, "How do you market a 
home computer or video game to 
Mr. & Mrs. Average?", was in the 
form of mass marketing. And to 
implement this mass marketing 
program, ATARI replaced 
their key marketing executives 
with men from the toy and 
cosmetic industries rather than 
those who were experienced in 
selling consumer electronics. 
These "new brooms" quickly 
landed deals with major retailers 
like Sears, Toys-R-Us and K-Mart 
during the Summer. But to make 
these deals, ATARI had to give 
contract pricing to the big retailers 
that was well below the costs 
offered to ATARI'S computer 
specialty dealers. Naturally, when 
Toys-R-Us can sell an ATARI 400 
for less than XYZ Computer 
Center can buy it, XYZ would 
have to drop the ATARI line or go 
out of business. Thanks to 
ATARI'S mass market programs, 
dealers from coast to coast 
dropped the ATARI line and 
began to bad-mouth it due to the 
bitterness of being cut out by 
ATARI. What ATARI'S market 
managers didn't figure, however, 
was that while they were signing 
up the big retailers, so were their 
competitors, Commodore and 
Texas Instruments. Since Com- 
modore and TI are both vertically 
integrated, they had no problem 
bombing the ATARI prices. 
ATARI, meanwhile had to 
sit back and attempt to sell the 
400 home computer with a $50 
handicap against their key com- 
petitors due to the video game 
groups' insistence that the too- 
late and over-priced 5200 Super 
Video Game System needed to 



occupy the $200 price slot. The 
fruits of this mass market effort 
have been bitter for ATARI. 
Before the Fall of 1982, ATARI 
led the home computer market, 
but today, (December 21, 1982), 
ELECTRONIC NEWS reported 
that ATARI had fallen into third 
place and even that position was 
in danger with Radio Shack 
coming up strong recently. For 
their efforts, the marketing 
executives and president of 
ATARI were recently terminated. 
The damage those executives did 
to ATARI'S sales and support 
network still will require much 
effort to correct, however. 

**Warner's control 
of ATARI is anal' 
ogous to an old 
Douglas DC-3 
pilot being given 
command of a 
Concorde*" 

For all of its faults, however, 
ATARI has the best supported 
home computer on the market. 
ATARI'S APEX program is 
unique in that it allows the 
400/800 users an opportunity to 
provide software support for their 
systems without having to go in 
business for themselves to do so. 
TI, Radio Shack and Commodore 
have no current program such as 
APEX. ATARI has done a good 
job of setting up service centers at 
most major cities, important 
support that the other companies 
are lagging in. ATARI has also 
cooperated with the third party 
suppliers of software, accessories 
and books for their computers in 
a manner similar to market- 
leader, Apple. Third party 
support is just in its infancy for 
ATARI'S competitors, however. 

On the marketing scene, 
ATARI will be dropping prices on 
all of their current home 



computer models and offering 
new models, such as the 1200XL, 
to boot. ATARI is also going to try 
to re-woo the specialty computer 
dealers with fairer margins and 
better support in 1983. 

From appearances, ATARI and 
parent Warner have learned a 
hard lesson in the high-tech 
consumer electronics business: 
computers are not toys. Let us 
hope that they will return to being 
a technologically-driven, rather 
than a market-driven company in 
the future and that ATARI will 
graduate their excellent home 
computers from a stormy adoles- 
cence to a stable maturity. With 
over 750,000 users of the ATARI 
400/800 among us and excellent 
magazines like A.N.A.L.O.G. to 
act as sounding boards, I'm cer- 
tain that Warner and ATARI will 
get the message and give us the 
support and products we want 
and need in the future. 
Sincerely, 
J.T. Irby 
Orlando, Florida 



Dear Editor: 

Your editorial in issue #9 was 
straight to the point and ironic in 
view of current events. The New 
York Times of 12/19 reported 
that ATARI is plagued by manage- 
ment turnover, disappointing 
game cartridge sales and an un- 
profitable computer division. It 
seems that ATARI really doesn't 
understand the home computers 
it is trying to create and is unpre- 
pared to compete now that they 
aren't the only GAME in town. 
The December issue of Datama- 
tion magazine related an inter- 
esting picture of R &l D at ATARI 
with a budget between sixty and 
one-hundred million dollars, an 
innovative chief scientist, an 
educational research institute, a 
lab to work on LOGO research 
and even a consultant in AI. I 
don't know about you but I think 
that this kind of effort should pay 
off with something more than just 
game software. Something is 
wrong. 



PAGE 10 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



Your points were well taken 
especially about education, user 
support and marketing. I do some 
part-time work for a local com- 
puter sales company and we no 
longer carry ATARI. Why? 
Because of the discounting of 
local video stores and mail order, 
it is not profitable to sell ATARI 
and provide support. ATARI 
seems to think user groups are the 
total answer but they aren't. 
Unfortunately people go for the 
low price and then realize too late 
that they need support in the form 
of advice and information. Every- 
one I have talked to wants a 
computer for their children. They 
are interested in education for 
their children as a very high 
priority and not only in games. 

A particularly annoying 
indication, at least to me, that 
ATARI does not take computer 
software seriously is the Macro- 
assembler. It costs almost $100 
and yet there is no way to buy a 
backup diskette and it doesn't 
even come with a center hole rein- 
forcement. Games costing $30 
always have the reinforcements 
and sometimes the backup 
availability. It may sound like a 
small point until you accidentally 
spill milk or something on your 
disk and have to pay full price for 
a "backup" of expensive 
software. 

ATARI'S forte (for the VCS) 
has thus far been games but Acti- 
vision, Mattel et al have produced 
game cartridges with much better 
graphics for the 2600 than ATARI 
has and as I have said ATARI is 
hurting because of it. It seems that 
cartridge sales account for the 
bulk of game machine profits. 
ATARI is heading for the same 
situation in serious computer 
software. Perhaps if A.N. A.L.O.G. 
surveyed its subscribers and made 
the results known to ATARI the 
problems would be brought to 
their attention and improvements 
would follow. 

Sincerely, 
Jordan Powell 
Carmel, New York 



Dear Sirs, 

This article was long overdue. I 
agree with it 100%, but I'm not 
sure who's to blame. We, the user, 
guide ATARI by our buying 
habits. If we show that we will buy 
more games than Educational or 
Utility programs then that will be 
the direction ATARI will take. 

When the first Home Com- 
puter hit the market the best 
way to show it off and get the 
public's attention was with a 
game, such as Star Raiders, and it 
did the trick. After Star Raiders 
came Space Invaders and so on, 
but soon after playing these games 
the hobbyist found the real 
purpose of the computer, and 
started to write his own programs. 

**With ATARI 

putting out 

more games and 

limited types of 

utility programs, 

ATARI went 

from Home 

Computer to 

Game 
Computer/* 



The problem is ATARI saw the 
money in games and started to 
redirect their thinking and leave 
the utility programs to third 
parties. With ATARI putting out 
more games, and limited types of 
Utility programs, ATARI went 
from Home Computer to game 
Computer. 

We now have to correct this 
error, and your article "Whither 
ATARI" is the first step, but it 
can't stop there. We have to let 
ATARI know by writing to their 
Marketing Dept., telling them 
what we want to see from them. 
We, the buyer, have to guide 
them. 



Now is the time to get our act 
together. Maybe you could get the 
correct name and address of 
ATARI for your readers to write 
to with their ideas. If we don't let 
them know then we have nobody 
to blame but ourselves. 

Sincerely yours, 

Philip Diedeman 

Phoenix, Maryland 

Dear Sir: 

Your editorial in issue #9 ex- 
pressed my long-felt opinions 
very well. After purchasing an 
ATARI 800 over a year ago for use 
in my home, I've agonized 
awaiting ATARI to release non- 
game software but was relieved 
when they finally released 
hardware information to third 
party developers. Now all ATARI 
users must wait for these firms to 
develop software that fills the gaps 
in Educational, Word Processing, 
Personal Finance, DB Manage- 
ment and Telecommunications. 
The efforts made by ATARI in 
these fields is less than first class 
and thus many users feel this 
reflects on ATARI hardware as 
well. 

You question the marketing 
strategy and I'd like to share some 
questions and possible actions 
with you. ATARI has many 
resources, not the least of which is 
name recognition. We're seeing 
the retail price of hardware falling 
to under $600 for the ATARI 
800. As ATARI struggles for 
market share, I wish they'd 
consider package enhancement 
instead of reduced prices. 

As "Computers for People" 
enter more homes, I believe many 
will refrain from purchasing today 
as prices will be lower later. Many 
remember the calculator price 
shake out. Now that these 
households see little quality 
software outside of games, they 
have little motivation to buy 
today. Developers of non-game 
software also feel less urgency in 
positioning their products. The 
ATARI name recognition will 
keep the public very aware of 
these price changes. 



Access Drives for the Atari®— Why settle for less! 

GET THE MOST OUT OF YOUR ATARtCOMPUTER. 
GET AN ACCESS UNLIMITED MINI-DISK DRIVE. 




Store twice as much information 

With an Access Unlimited drive, you can store almost twice as mucti 
intormation on a diskette as you can witti an Atari 810™ 

Our system has double-density storage. Which lets you store system 
and application programs on one diskette and still have room for data files. 

You save $$ 

You save on the cost of diskettes — because you don't need as many. 

You may also need fewer disk drives because our Access drives are 
double-density and, unlike the Atari 810, our controller can handle up to 
4 drives. 

Furthermore, our add-on drives do not require Iheir own controllers. 
They're less complicated. They cost less. And they're more reliable. 

Now Available! 

Access single density drives. 102k storage but much cooler, quieter 
and more efficient than the 810! 

Enjoy more flexibility 

Our flexible drives let you cable your first-drive 
computer. Or go through an 810 drive. 

And our Access controllers automatically 
density drives in the same system. 

Order today. 
Satisfaction guaranteed. 

ATAR88-1 

ATAR88-A1 

ATAR40-1 

ATAR40A1 

ATARISEP 

SPECIALS 

Fllp-N-File — holds 50 diskettes 



first drive single density 
Add on drive single density 
First drive double density 
Add on drive double density 



system directly into your 
handle single- and double- 



$488.00 
$379.95 
$624.95 
$399.95 
$24.95 



5'/." 



Head Cleaning Kil 

Green Screen 

Drive Numbering Tabs 



Reg. $34.95 
Reg. $49.95 
Reg. $29.95 
Reg. $24.95 
Reg. $4.50 



Library Cases Holds 10 Diskettes 



Now only $19.95 
Now only $28.95 
Now only $19.95 
Now only $12.95 
Now only $3.95 
Now only $2.95 ea 



We have just added approximately $250,000 
worth of brand new business and game software. 



New! SVa" Soft Sector Diskettes W/Hub Ring 

BASF Lifetime Limited Warranty Discs. SSDD S2490 Box of 10 
ATHANA 1 yr Limited Warranty Discs. SSSD $1990 Box of 10 

To order, call TOLL-FREE 



1 (800) 527-3475 



Ordering Information 



Order by phone or by mail. We accept Visa, MasterCard, cashier's checks, 
certified checks, and money orders. With personal checks, allow additional 
time for bank clearance. Your bankcard will not be charged until your order is 
shipped. On orders over $1,000, we pay freight (surface only) and insurance; 
please add $3.00 shipping and handling under 50 lbs. Over 50 lbs., add $5.0C 
for orders under $1,000.00. Texas residents add 5% sales tax. Allow 2 to 4 
weeks for delivery 

LIMITED QUANTITIES • Prices subject to change without notice. 



D Please send me a FREE catalog. I'm not ready to order al this time 
D YES, I'm taking advantage of your Sales prices. 

Name 



Company Name . 

Address 

City 



. State . 



Phone Number! 
Quantity 



Item 



Unit Price 



Subtotal 



Subtotal 

State Sales Tax (Texas residents only) 

handling charge 

Check one: Total 

□ payment enclosed D Visa G tvlasterCard' 







'If Ivlasterr.ard niimhers ahnve name' 




Expiration Date: ~^ 



Authorized signature, if charged 



ACCESS UNLIMITED 



Dept.G2/401 N. Central Expwy #600/Richardson, Texas 75080 

Tel 1-800/527-3475 214/340-5366 

214/690-0207 Sat. and Evenings Only 



PAGE 12 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



Whatcould be done? Prices are 
lowered due to decreased costs. 
Less resistance would occur had 
ATARI included more "optional" 
hardware with the ATARI 800 
package. Suggested items would 
be: Pilot Home Package, Enter- 
tainer Kit, Educator Kit or 850 
Interface. By adding any of these 
items to product would be 
enhanced and the selling price 
would not need to drop. The 
customer would not see 
successive price reductions and 
thus would purchase more readily 
based on desire to satisfy need. 

What could be done to allow 
home users to upgrade? Why not 
give $75 credit toward the pur- 
chase of a 1200XL or 800 from a 
dealer with the trade-in of a 400? 
Then ATARI, via Warner, could 
place them in cable households in 
the vein of the Qube experiment 
in Columbus, Ohio. Or the trade- 
in units could be donated to 
schools at a break even expense to 
ATARI considering tax benefits 
and the "cost" of the trade-ins. 
This would place more units in 
front of more users and help 
enhance the "education" image 
for ATARI — not at the expense 
of the "game" image. 

Regardless of the marketing 
strategy eventually chosen, I hope 
ATARI soon develops superior 
non-game software to compli- 
ment their machines and game 
software. Many households 
already have ATARI VCS game 
systems and more purchase them 
every day. Does ATARI really feel 
a household will pay $600 for a 
second game machine? Isn't there 
enough competition in the home 
arcade industry without ATARI 
competing with itself? 

Robin Lynch 
Mundelein, Illinois 



Dear Sirs: 

I couldn't help but grin when 
reading your editorial in 
A.N.A.L.O.G. #9. 

Slightly over two years ago, I 
purchased a TRS-80 Color 
Computer from Radio Shack. I 



quickly learned BASIC, Extended 
BASIC, and updated the memory 
to 32K. I waited and waited for 
the software to come out, only to 
be rewarded with Dinowars and a 
whole list of second-rate games. 
Tandy's marketing policy targeted 
the computer as a game machine, 
but the users knew differently — 
they knew it was a machine far 
more capable than its makers gave 
it credit for. 

Eventually, frustrations were 
eased by the products from third- 
party software vendors who 
developed everything from word 
processors, data bases and utility 
packages, to much-improved 
high-resolution action games. It 
was finally becoming a 
worthwhile investment, but no 
thanks to Tandy. 

Although the machine 
improved in its capabilities, I 
never could resist the lure of the 
ATARI 800. In December, I 
plucked down a lot of money for 
the system with disk drive, and 
was thrilled that there was so 
much software to choose from. I 
gave the TRS-80 to my parents 
with their new-found interest in 
home computers. 

The irony, of course, is that the 
A.N.A.L.O.G. editorial speaks 
of the same problem. Different 
computer, different corporation, 
same problem. The solution is 
simple: don't look to ATARI for 
the answers. The good software 
will result from two things, 
namely third-party software 
companies and user demand. 
Furthermore, the scenario is 
typical of many home computer 
products. We are not alone. 

The fact is, any business 
application, peripheral device or 
expansion capability that can be 
conceived of will most likely be 
done, especially if there is a 
demand for it. I imagine there will 
be numeric keypads, Z-80's, 
CP/M systems and who-knows- 
what available for our favorite 
computer before too long. 

As a matter of fact, I'm writing 
this letter on a system utilizing Bit 
3's 80-column board, a green 



phosphor monitor and Letter 
Perfect word processor. It's 
enough to make many Apple 
users a little bit envious. 

So, I have a few things to be 
grinning about. 

And don't worry whether 
ATARI thinks they've got a 
"machine in a box." The serious 
software is out there. 

You just have to know where to 
look. 

Sincerely, 

Bob Safir 

Los Angeles, CA 



Dear Editor: 

We note the reference in your 
editorial in Issue 9 to the ATARI 
"Talk &. Teach" system. Dorsett 
Educational Systems, Inc., 
developed this system in 1975, 
patented it, and in 1977 licensed 
ATARI to use it. We later 
developed 1024 half-hour tutorial 
program titles, contained in 64 
courses of 16 audiovisual 
programs each, far in excess of the 
number for any other computer. 
It is perhaps more tutorial pro- 
grams, (exclusive of drills, tests, 
games and simulations) than exist 
for all other computers, combined. 

ATARI released only 256 of 
our titles, contained in 16 courses 
(Algebra, Spelling, Psychology, 
Sociology, Economics, Ac- 
counting, Electricity, U.S. 
History, World History, U.S. 
Government, Supervision, 
Writing, Physics, Counseling and 
Classics). We now sell these 
courses, plus Electronics (48 
programs). First Aid and Safety, 
Spanish, Health Services, Office 
Careers, Philosophy, Auto 
Mechanics, Construction, Car- 
pentry, Shop, Statistics, and 
hundreds of Reading Compre- 
hension, Reading Development, 
Vocabulary Building, ESL, 
Phonics, and Math programs, 
each of which runs up to a half 
hour, and has full-time 
professional, high-quality 
recorded narration. We are 
unable to agree that for the 
ATARI computers, as you claim. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 13 



"quality educational software is in 
short supply." 

ATARI apparently agreed with 
you that the "Talk and Teach" 
programs "didn't sell", since they 
sold the rights for them back to us 
nearly two years ago. But their 
royalty statement to me discloses 
that they had already sold more 
than 600,000 program copies 
packaged in 38,000 series. Not 
bad for something that "didn't 
sell" and which was returned at a 
time when 80% of the ATARPs 
now being used did not exist. We 
hope to supply courseware in 
increasing quantity. 

But there are problems with 
"Talk and Teach" programs. 
They are first-generation, so 
graphics are simple, although 
often clever and colorful. Special 
visual efforts are infrequent, 
although all text is in upper and 
lower case. Particularly important 
is the fact that computer 
hobbyists will miss complex 
branching and string responses. 
Responses are all multiple-choice, 
and branching, when used, is 
simple. It is not easy to make 
illegal copies. 

Most important, the tutorial 
mode actually attempts to teach, 
which means that after going 
through programs two or three 
times you are through with them, 
as compared to games or 
simulations, which can provide 
more extended interest to those 
who already know the subject. 
Many educators prefer to 
introduce information by non- 
computer means and use the 
computer as reinforcement. 
Tutorial programs may have more 
appeal for home self-study. 
Sincerely, 
Loyd G. Dorsett 
President 
Dorsett Educational 

Systems Inc. 
Norman, OK 



Gentlemen: 

Here I sit at the console of my 
ATARI 400, having just finished a 
productive and (through no 



choice of mine) lengthy pro- 
gramming session. I have decided 
to announce the big error. 

This letter is being sent to four 
major magazines for personal 
computers in the hope that we can 
avoid any more BASIC cartridge- 
sized holes in the wall. 

A "lock-up" is a painful 
experience, as it prevents any 
communicadon with the com- 
puter whatsoever. There are 
many ways to produce a lock-up, 
such as Print A = Not B. Try it. 
Then enter from tape or disk 
(after rebooting) a long BASIC 
program. Now the tricky part: 
type a line number near the 
beginning of your file. With your 
finger on BREAK, push 
RETURN immediately followed 
by depression of the BREAK Key. 
4 out of 5 times, odds enhanced 
by long sessions of unsaved 
programming, the machine will 
allow entry of input but not 
respond. 

Great fun, eh? 

It this ever happens to you, 
don't get mad, just take it in stride 
(while sweeping cartridge pieces 
away). It's happened before, it 
will happen again and until 
300,000 rude letters to Warner 
Communications cause them to 
correct the defect, will continue to 
happen throughout eternity. 
Sean Puckett 
Homestead, Florida 

Dear A.N.A.L.O.G., 

Game programming can be re- 
warding, but moving the players 
up and down in BASIC is too 
slow. Since I do not know how to 
program in Assembly language, 
would you produce a machine 
language subroutine that I can call 
up from BASIC to move players 
up and down fast? 

Thank you very much for your 
attention. 

Yours truly, 

Long Mai 

Salt Lake City, UT 

No problem. Check out "Moving 

Players in BASIC," page 73. 

—Ed. 



Sirs, 

Is it possible to CLOAD or 
CSAVE a program, but not have 
that shrill beep? 

The cassette (or disk) Input-output 
beeping can be turned on or off at any 
time. To turn the sounds off, use the 
command POKE 65,0. To turn them 
on again, POKE 65,3. 

—TH 



B stoks 



We've 

Got 

Software 

Free Catalog Available 

A TARI is a registered trademark 
of ATARI, INC. 



P.O. BOX 21 828 
DENVER, COLORADO 80221 

"Your Discount Software Store" 

Orderline: (303) 431-6598 





*N*LOC CQHm.VC 




•M-I'T-LI. ' 


71 „„,., 


^^ »l-HontMy ( (, tl«. p« ye.r. 




(12.00 








HUK.,l J. D„ Ch,n«. Hi H,.n S.r„t. Ch.rr, V.ll.y MA 01611 


Jen Brll, S6) n.ln S[r»H. Chrrr, V.U.V. HA 01*11 


||^;.._.:p:^--^_...^;^-_^;i^_r^^^^ 


.HMm.On^hnil....,lnrL..^^ 


^^^..ln.r..„,rh..r,v.l1.,.mn.M. 










■^■"- ™«.,.-,.«.™_ 


nun^,^. ,>.. ,. jf^i^s-;^, ^-:J;:'^a.-'^ga^ 




□ ;:;.«._._,« ^^„ _,« ,„. 


,.,„,«=„„-.,„„™..„o. 1 KlS'SV.SJKaiK- 


£iS%K^g^^S.R?'H 


. .o,.c«™«..,«-_._, 1 1) 000 


;i Doo 


' ;"£i':s:^':;i,„ ^™,~— ___-. 


10,500 


IB ;oo 




Z 200 


s oaj 


C .DT....,po«>„A„=_,„.„„.„,„„ 


11.700 


11 283 


" i2J.'j;'ri2i;2:;.*r,5*,"iST.i'.'?4i'St»"' 


tl 


no 














'■ — — ~— . 


„ 




o.o...,v— .,„_,-,_.«„„ .., 


,3 go- 




u-r.^::;:r=rtx^ [>| ^.^7<7^ c%.. "* " I 




».^ 


—I- 







PAGE 14 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



NEW 




• » 



by The Program Doctors 




The ATARI home computer market continues its 
explosion as almost every "home" computer 
software company is now either converting or 
designing new software for the 400/800. With all 
the outside competition, ATARI is finally realizing 
that it must begin to meet the challenge head-on both 
in price decreases and an increase in the frequency of 
software releases. With the recent announcement of 
a $499 full retail 48K 800 (minus a BASIC 
cartridge), ATARI is clashing directly with the 
Commodore 64. Along with this our sources 
indicate that 810 drives will also be dropping in cost 
probably to combat the challenge from both Percom 
and Micro-Mainframe drives which retail for much 
less than the 810. ATARI rushed out DEFENDER 
and GALAXIAN for Christmas and neither match 
up to their arcade counterparts. DEFENDER (a true 
16K cartridge) lacks the superb graphics of the 
original Williams classic. Although the game is a lot 
of fun to play it lacks that arcade "feel." 
GALAXIAN does not even come close to the 
Midway classic in either playability or screen display 
(and is really not that much fun to play. ) The ATARI 
consumers are constantly upgrading their 400's; 
more and more people are also adding drives and 
playing such outstanding computer games as 
CHOPLIFTER, BANDITS and POOL 1.5. These 
people are not satisfied by "licensed arcade releases" 
in ROM packs. To satisfy the evergrowing "purist", 
ATARI should take a hint from the third party 
vendors and begin releasing these titles in both a 
ROM version and a more enhanced disk version (ala 
Roklan). 



Ag-eo 



■» a*r' as s*tf ■» -mr. «■ ;»r 
•SS^ -Mr ^ -Sfe ■ '^ ■*; ^3*^ -*■ 
iSe- rSKt *■■ '«•*.'«• 



GALAXIAN 



Back in the early days of A.N.A.L.O.G. there 
was an original program entitled "Maze Rider". 
Essentially this was a three-dimensional maze game 
and definitely an A.N.A.L.O.G. "classic." This idea 
was expounded uponliy P.D.I, in CAPTIVITY and 
EPYX with MONSTER MAZE. The 3-D concept 
has been taken to the ultimate experience by Sirius in 
WAYOUT. This 48K game consists of 26 different 
mazes which provide hours of fun and frustration 
and demonstrates the superb graphics and animation 
which can be programmed into this marvelous 
machine. As you attempt to find the WAYOUT you 
see and feel the depth in the maze as you travel about 
with your compass and map maker. As in all games 
there is a villain and in WAYOUT it is "Cleptangle," 
a mischievous pirate that steals your exploration 
equipment and leads you astray. This game has a 
great scoring system which allows for many replays 
within the same maze, since it is based on the distance 
traveled through the maze. A floppy record is 
provided to maintain high or in this case low scores 
on the disk for each of the 26 mazes. On a lower note 
from Sirius is its release of all the VCS cartridges for 
the 400/800, FAST EDDIE, TURMOIL, DEADLY 
DUCKS, WORM WAR and BEANY BOPPER. To 
say that these are 4K cartridges should be enough to 
the average A.N.A.L.O.G. reader, but to be more 
specific, let your VCS buddies buy these cartridges. 

Everybody likes to say that they own real arcade 
titles like FROGGER and MISSILE COMMAND, 
but sometimes these translations are not true to the 
originals. One company that is attempting to 
reproduce authenic arcade games is Roklan 
Software. Its first release was DELUXE 
INVADERS, an excellent translation from the 
Midway classic. Now comes WIZARD OF WOR 
and GORF, also licensed from Midway in both disk 
versions and ROM packs. WIZARD OF WOR, a 
personal favorite of the Program Doctors, is 
complete with hi-res graphics, arcade-like sounds, 
and interactive play. As you enter the "Dungeons of 
Wor", your mission is to rid the Dungeon of all the 
evil "Worlings", destroy the speedy "Worluk", and 
meet the mighty "Wizard" himself. Some of the 
"Wizard's Worlings" have the ability to disappear 
and therefore to aid in your search a radar screen is 
provided for tracking purposes. When you 
successfully survive a "dungeon" you are 
confronted with a better-protected one. Also, the 
time before the "Wizard's" cronies speed up their 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 15 



defense of their "lair" is decreased and there are 
more enemies to destroy. In the interactive two- 
player version, both players compete at the same 
time either as partners or opponents. This really is 
the best feature of the game. WIZARD OF WOR is 
an arcader's delight and definitely a must for the 
game enthusiast. The disk version has more spruced- 
up sounds and a fine high-score save feature. GORF, 
the most popular of Midway's trio released by 
Roklan, does not excite as much as their previous 
two games. This could be due to the tremendous 
amount of quality arcade games on the computer 
market already. Although it was unique in its original 
issue as a multi-screen arcade game, GORF is not as 
well-received as it might have been had it been 
released a year ago. 




WIZARD OF WOR 






GORF 

Many software purchasers are influenced by full 
page 4-color advertisements in computer magazines. 
Often times the best thing about these programs is 
the cover art. A program that does live up to its 4 
month media hype is First Star's ASTRO CHASE. 
From the time you see the title page and the one- 
voice opening theme (this was to preserve memory) 
you can tell this is something special. Currently 
available on 32K disk and tape, the scenario is a 



SYPFAD (for the new readers "SAVE YOUR 
PLANET FROM ABSOLUTE DESTRUCTION. ' ' ) 
Graphically speaking this game has everything, and 
the periodic sideshows are well done and quite 
humorous. "THERE IS NO ESCAPE" to this game 
but it sure is a lot of fun trying. 




ASTRO CHASE 

Adventure International has been writing for the 
400/800 from its conception in 1979 and is quickly 
climbing to the top of the ATARI computer software 
industry. AI has followed its largest selling software 
program written for any computer, PREPPIE, with 
three new arcade titles. SEA DRAGON (written by 
Russ Wetmore, author of PREPPIE), is a multi- 
screened underwater game which not only requires 
skill but also patience as you navigate your 
submarine through a plethora of obstacles in an 
attempt to destroy the "Master Mine." This game 
receives the Program Doctors first "Seal of 
Approval" awarded only to computer games which 
contain everything a great arcade game should have: 

1. Multi-level option 

2. Great graphics, sounds, and game logic 

3. Real-time play ability 

4. A save Hi-score to disk option (32K disk 
version only) 

5. Multi-screens 

6. An attainable ending (nobody says it has to be 
easy) 

7. A repeatability factor (or lack of boredom 
factor) 

8. An availability on both disk or cassette ( 16K in 
this case) so all of us can enjoy the game 

Obviously we like this game very much and highly 
recommend it, and suggest when you play it to try to 
use the joystick in as many ways as possible; you may 
find some hidden surprises. 

AI has not stopped here. They have released two 
other arcade titles, STRATOS, a nice extension to 
the MISSILE COMMAND genre; and BUG OFF, a 
frantic game for you people who love to kill bugs 
instead of spaceships. For the adventurer both 



PAGE 16 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



ADVENTURELAND and PIRATE ADVENTURE 
are now available in 48K graphic versions and are 
unique both in animation and perspective, and the 
S.A.G.A. Series shows great promise. This company 
is not only offering support in these two areas but 
also in utility packages with DISKEY.a disk editor 
that allows you to do everything you wanted to do to 
your disks but were afraid to try, and BASIC 
ROUTINES FOR THE ATARI, by Jerry White, 
containing 24 basic programs to aid in programming 
in such areas as paddles, joysticks, timer, common 
subroutines, p/m graphics, sounds, disk utilities, 
etc.. 



HiGH SCSRE 2 Uf 



2 HP A 




SEADRAGON 




-,.^,-^,, ..^.. ^ ,..^,,ber; 1 "HC-VEHTURELftN&' 
In thi-s ft d venture you're to fjrid 
*TPEH5UftES« & Store the« away, T* 
' - / well you're' doina say; 






■'zmmmmr 



Pinball simulations are big sellers for home 
computers and SubLogic has finally converted 
NIGHT MISSION for the ATARI. With its first 
ATARI arcade release SubLogic has attempted to 
recreate the actual feeling of playing pinball. From 
the time you insert your first quarter you begin to 
feel that this is different from other pinball 
simulations. NIGHT MISSION is user-adjustable, 
and therefore if you do not like the SubLogic version 
you can redesign it to suit your taste. Although you 
cannot modify the playfield itself you can adjust 
such things as ball speed, friction, inclination, 
bumper sensitivity, free game match probability, and 
free game score. These adjustable parameters allow 
you to customize NIGHT MISSION just the way you 
like it. The only drawback to this game is that the 
sounds come out of the speaker, and before you get 
annoyed, this was done for memory considerations 
and that old computer proverb "you don't mess with 
success", since the original was written for our good 
micro-buddy, the (burp) Apple. 




S.A.G.A. #1 



NIGHT MISSION 

As the software companies pulled out all the stops 
for Christmas a multitude of new titles were 
released, including two games which will satisfy that 
QIX fix until the original is released by ATARI. KID 
GRID and JEEPERS CREEPERS are based on the 
"surround-the-box-before-they-get-you premise". 
Both are fun arcade games with addictive qualities. 
For all you "Forth Funatics", JEEPERS CREEPERS 
is written in QS FORTH by Quality Software on 
both disk and cassette. On the other hand Tronix (a 
new kid on the block) developed KID GRID, a real 
sleeper on both 16K tape and disk. 

Just when we were about to write off Gebelli and 
give it the "Crystalware Award of the Year" prize, 
CANDY FACTORY, a 32K disk, comes to the 
rescue. Those of you who have been "burned" by 
this company in the past can be confident when you 
get this good climbing game. Unlike CANYON 
CLIMBER this game has "staying power". It has 10 
different screens that will definitely bring out the 
Spiderman in you. Unfortunately we must warn you 



to stay away from their two cartridges, the 4K 
FIREBIRD and EMBARGO; your software dollar 
can be much better spent. 




JEEPERS CREEPERS 




KID GRID 



Before we close, the Program Doctors have one 
other new program to talk to you about. It is rather 
hard to do since a definite conflict of interest is 
apparent. We do not work in the offices of 
A.N.A.L. O.G. and have never even personally met 
one of our two editors, nor do we need the income 
derived from writing this bimonthly column. Our 
job is only to inform you, the software purchaser, of 
the products on the market. Therefore, hoping we 
have maintained our editorial integrity, we must tell 
you that A.N.A.L.O.G. Software has a definite 
winner with its latest release, BURIED BUCKS by 
Tom Hudson. Providing 99 levels of play, this 
original game requires speed and skill. The player 
uses a helicopter to dive-bomb holes into the earth 
and then delve inside these same deep caverns to pick 
up the money and run (or in this case fly) to safety. 
The nemesis in the action is a plane that keeps on 
coming to refill the earth channels your chopper has 
made. Available on both 16K tape and disk, for one 
or two players, this game is done rather well. 

By next issue, we should have new, massive 
amounts of information for you, so until then, keep 
those cards and letters coming. D 



DISK WIZARD 



A COMPLETE DISK UTILITY PACKAGE AT AN 
AFFORDABLE PRICE 

THIS COMPREHENSIVE PACKAGE INCLUDES THE FOLLOWING POWERFUL 
PROGRAMS FOR THE ATARI- 800 COMPUTER (MINIMUM; 32 K) 



DISK BACK-UP 

• SINGLE / DOUBLE DENSITY 

• SUPPORTS 1 OR 2 DRIVES 

• ALLOWS BACK-UP OF DISKS 
PROTECTED BY BAD SECTORING 

• FAST COPY OPTION 

• SECTOR STATUS SUMMARY 



DISASSEMBLER 

■ DISASSEMBLE FROM DISK BY 
FILE NAME OR SECTOR NUMBERS 

* OPTIONAL OFFSET 

• OUTPUT TO SCREEN OR PRINTER 



DISK EDIT 

• REVIEW / MODIFY ANY SECTOR 

• WORKS WITH ALL FORMATS 
» SINGLE / DOUBLE DENSITY 



• SCAN SECTORS FOR A SERIES 
OF BYTES OR A STRING 

• DECIMAL / HEX NUMBER CONVERSION 



DISK SPEED 



COMPREHENSIVE MANUAL INCLUDED 



$29 



ORDERING INFORMATION 

For fast delivery, send cerlified 
check or money order. Personal 
checks: allow 2 to 3 weeks. 
MASTERCARD & VISA accepted. 
(Maine Residents add 5% Sales Tax) 
Phone orders accepted on C.O.D. 
and charges. 



•ATARI is a registered Trademark of Atari, Inc. 



95 



69 NEW BOSTON ROAD 
YORK, MAINE 03909 
(207) 363-3036 or 
(207) 384-5068 



THE ULTIMATE IN COPY PROTECTION FOR ATARI" SOFTWARE 

NOW YOU CAN PROTECT YOUR SOFTWARE FROM UNSCRUPULOUS piRATCC 

ATARI° SOFTXA/ARE 
PROTECTIOIM TECHNIQUES 

thoroughly explains the copy techniques used by advanced soft- 
ware pirates. YOU can avoid the common protection pitfalls with 
instruction in the state of the art of software protection schemes. 
This HOW-TO BOOK & PROGRAM includes: 



3^8.95* 

for book and disk 
software 

$nS.9S* 

tor book only 



HIDING DISK DIRECTORIES 
WRITING BAD SECTORS 
MISASSIGNING SECTORS 

(CUSTOM FORMATTING) 

HARDWARE DATA-KEYS 
EPROM & ROM CARTRIDGES 



DISK PACK^OOO 



THIS DISK UTILITY 
PACKAGE CONTAINS: 
ULTIMEIMU -Ttie ultimate in userfriendly disk menus. Put on a disk and this self 
booting program displays all files and automafioally runs the one 
you select. IT euen runs most BINARY LOAD FILES from basic. 
BACK- A- DISK- Lets you back up almost anything with SECTOR-COPIER & 

BAD SECTOR WRITER. 
DISKTIME - Its a disk timer that graphically shows disk's RPI^'s. 
SCREEIM OUMPER - This allows you to transfer any graphic display to a disk, 

then reproduce it anytime in seconds. 
COLOR FIX- Helps adjust your TV to show the right colors and hues for your 
computer. 

This utility disk package for your Atari" is better ^ ^^^ ' 

than those costing 3 times the price, only SpHJiCliiaO 



Send CHECK or MONEY ORDER to. 

ALPHA SYSTEMS 
4435 MAPLEPARK RD 

STOW, OHIO, aasaa 

Or charge to your MASTERCARD or VISA by calling. 

CSiei 374-7453 

Include $2.00 for shipping & handling /Ohio residents add efc* tax. 



B 



S 



LPHA 



Alaii IS a Irademack ot Watner Communications 



YSTEMS 



PAGE 18 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



Software Review: 
Wayout by Paul Edelstein 
SIRIUS SOFTWARE 
Sacramento, CA 95827 
48K Disk $39.95 



by Brian Moriarty 



A few weeks ago, I came strolling into the offices 
of A.N.A.L.O.G. to ask my favorite annoying 
question, ""What's new?" 

Editor Lee Pappas inimediately began tearing his 
desk apart, looking for the latest marvel from Sirius 
Software. As his frantic search continued, his eyes 
began to redden, his breath heaving in quick, short 
jerks like a junkie going cold turkey. Just as I began to 
think it might be better to visit some other day, 
Charles Bachand had the bad luck to walk through 
the door. Lee grabbed Charlie by the throat (not an 
easy task; Charlie stands d' 4') and hissed, "'Where's 
Wayout? " 

"Out in my car," poor Charlie croaked helplessly. 

"Get it — now!" 

The precious pre-release copy of the disk was 
quickly booted, and I became another fan 
mesmerized by one of the best microcomputer games 
since Star Raiders. Wayout is really that good. 

The idea of the game is simple. You've been 
dropped into the middle of a complicated maze 
which has exactly one exit. Armed only with a 
compass and a map-making tool, you must find your 
way out of the maze by the shortest possible route. 

As you ""walk" through the maze (using either the 
keyboard, a joystick or a paddle), you see a full-color 
image of the maze as experienced from the inside. 
The solid blue walls slip past with startling realism 
and perspective. Both Charlie and Tom Hudson (no 
strangers to assembly-language game programming) 
were astonished by this nifty example of real-time 
animation. The rest of us were dumbfounded. 

26 ways to get hopelessly lost. 

It wouldn't take very long to memorize the layout 
of a single maze, even a big one, so Sirius provides no 
less than 26 different mazes on the Wayout disk. 
You can save a game-in-progress, record your best 
score for each maze and even mark up to nine 
locations in a given maze and return to any one of 
them in a moment. This latter feature is essential to 
mastering the game — but more on that later. 

While admiring the graphics, you may notice little 
dots of light flitting around the picture area. These 
"bugs" in the program are actually fireflies, moving 
around on the breeze that sometimes blows in from 
the exit. You're supposed to let the fireflies help you 
determine the location of the exit. After hours of 
play, I can't say they've been very helpful. 



Introducing . . . the Cleptangle! 

The most sadistic feature of Wayout is the 
Cleptangle (CLEPTomaniac RectANGLE). The 
Cleptangle is the geometric equivalent of a purse 
snatcher. He's also one of the most diabolical 
computer personalities to emerge since the Thief in 
Zork. 

Visually, the Cleptangle appears as a spinning 
rectangle, red on one side and white on the other. His 
sole purpose in life is to make you miserable by 
stealing your compass and/or mapmaker. The 
compass is somewhat expendable, but the 
mapmaker is absolutely essential to your success. 
Consequently, if the Cleptangle runs off with your 
mapmaker you must chase him down until he's 
trapped in a corner or dead end. Then he'll give up 
his prizes and go away — for a while. 

The Cleptangle has a way of showing up just when 
you're starting to make progress. He'll grab your 
stuff and head straight for the area you just finished 
exploring. Unless you use the save-position feature 
mentioned earlier, you will go mad re-tracing your 
steps after you catch up with the fiend. 

A warbling tone indicates the presence (or blessed 
absence) of the Cleptangle. A different sound is 
heard when you come close to the exit, represented 
by a rapidly flashing hole in the maze. In some mazes, 
the wind coming out of the exit is so violent that you 
can't get near it without blowing away. You'll have to 
find some alternate path of approach. 




Wayout is one of those rarities in ATARI games: a 
good-looking product that actually manages to hold 
your interest. Since I received my rare personal copy, 
I've made my way through about a dozen of the 
mazes. My scores have been pretty awful, but I'll be 
going back to improve them after I finish numbers 
13-26. In the meantime, we can hope that Sirius will 
release additional Wayout mazes. 

Paul Edelstein deserves stardom for his masterful 
programming effort. When I'm showing off my 
ATARI to friends, I don't automatically reach for 
Star Raiders any more. D 



SUPER SPECIALS 



CHOPLIFTER 

$22.95 DISK 

K-RAZY SHOOT OUT 
$31.95 CARTRIDGE 



GENETIC DRIFT 
$20.49 DISK/TAPE 

STRATOS ^ 
$24.49 DISK/TAPE 



\ 



SHOOTING ARCADE 

$20.49 DISK/TAPE 

BAJA buggies' 
$22.49 DISK/TAPE 



Prices effective March 1 through March 31, 1983 



FREE* SOFTWARE 



FREE* SLIK STIK 



ATARI 

CONVERSATIONAL 

LANGUAGES -T 43.95 

INVITATION TO 
PROGRAMMING2&3 T ... 2L95 

MUSIC COMPOSER ■ C 32.95 

MY FIRST ALPHABET D ... 26.95 

TOUCH TYPING T 19.95 

HOME FILING MANAGER-D 37.95 

MAILINGLIST-T 19.95 

ASTEROIDS C 26.95 

CAVERNS OF MARS - D 28,95 

COMPUTER CHESS -C 26.95 

MISSILE COMMAND -C .... 26.95 

SUPER BREAKOUT ■ C 26.95 

STAR RAIDERS ■ C 32,95 

ASSEMBLY EDITOR C 44,95 

BASIC C 44 95 

MACROASSEMBLER ■' D ^ ' ' ' 65.95 

MICROSOFT BASIC ■ D 65,95 

PILOT (HOME PACKAGEI-C 58.95 
INVITATION TO PROGRAMMING 

IT 18.95 

SPEED READING -T 55.95 

BASKETBALL ■ C 26.95 

GRAPH IT T 15.95 

JUGGLE'S HOUSE D/T . . . . 22.95 
PILOT (EDUCATOR) ■ C .... 97.95 

VIDEO EASEL ■ C 26.95 

DEFENDER -C 32.95 

GALAXIAN-C 32.95 

QIX-C 32.95 

DIG DUG -C 32.95 

ET - C 38.95 

TIMEWISE-D 23.95 

ATARIWRITERC 61.95 



ADVENTURE INTERNATIONAL 

PREPPIE-D/T 23,95 

S,A.G.A, ADVENTURES -D . 31.95 

SEA DRAGON D/T 27 95 

STRATOS D/T 27.95 

BUGOFF-D/T 23.95 

ANALOG 

RACE IN SPACE - D/T 20.95 

CARNIVAL D, T 20.95 

SUNDAY DRIVER - D/T 23.95 

CRASH DIVE! - D/T 23.95 



ON-LINE 

JAWBREAKER D/T 23.95 

ULTIMAI-D 31.95 

THRESHOLD -D 31.95 

ULTIMA II -D 44.95 

MOUSKATTACK - D 27.95 

FROGGER - D,/T 27.95 

SIRIUS 

BANDITSD 27.95 

WAYOUTD 31.95 

BEERRUND 23.95 



THE DISCOUNT SOFTWARE 

COMPANY THAT 

PAYS YOU 

A DIVIDEND!!! 



*COUPON PROGRAM 

The purchase of each program (with Ihe 
exception of Super Specials, Atari, arid 
APX) will earn you 1 COMPUT ABILITY 
DIVIDEND COUPON, Saue 3 coupons 
and redeem them for your choice of Sjilt 
Stik, a Lefty Adaptor, or an Extension 
Cable, OR save 10 coupons and redeem 
them for your choice of any program we 
sell for $24,00 or less (with the exception 
of Super Specials, Atari, and APX). You 
pay only a $2,50 shipping and handling 
charge. 



DATASOFT 

SHOOTING ARCADE D'T . 23.95 
PACIFIC COAST 

HIGHWAY D/T 23.95 

MICROPAINTER - D 27.95 

C/\NYON CLIMBER ■ D/T . . . 23.95 

FATHOMS FORTy D 27.95 

O'RILEY'S MINE D/T 27,95 

ROSEN'S BRIGADE D/T . . . 27.95 

SANDS OF EGYPT D 31,95 

BIG FIVE 

COAL MINER 2049'ER Cart . 39.95 



I.D.S.I. 

POOL 1.5 D 27 95 

POOL400-Cart 31.95 

SPEEDWAY BLAST Cart ... 31.95 

JUGGLER D 23.95 

SURVIVAL OF THE 

FITTEST Carl 31.95 

FIRST STAR 

ASTRO CHASE D/T 23.95 

SENTIENT 

CYBORG D 27.95 

GOLD RUSH D/T 27.95 



WE CARRY HUNDREDS OF ITEMS FOR ATARI 400/800, ASK FOR OUR FREE CATALOG. 



Mxv-FightGr 



The Ultimate Joystick 

• 2 Year Warrantv 

• More Accurate „ ^ ^^_ 

• Easier to Hold * 16.95 

LEFTY JOYSTICK ADAPTOR 

Adapts to an^i Atari Joystick. _ -^ 

Moves fire button to top Right. j7 .zft) 




• 90 Day Warranty 

• Easy Ball Top 
Control 




^^Siiiitf irn 



EXTENSION CABLE (5 ft.) 

Adapts to any Atari controller. 



$9.95 



$6.95 

ALL JOYSTICKS WORK WITH Atari VCS, Sears Telcgame. Commodore VIC 20, Atari 400/800 (All products have registered trademarks) 

30 Dav Money Back Guarantee on all Suncom Products - Dealers inquiries invited!!! 



BRODERBUND 

APPLE P/\NIC- D/T 23.95 

STELLAR SHUTTLE - D/T . . . 23.95 
DAVID'S MIDNIGHT 

MAGIC -D 27.95 

STAR BLAZER ■ D 25.50 

TRACK ATTACK - D 23.95 

LABYRINTH - D/T 23.95 

SERPENTINE D 27.95 

DUELING DIGITS - D 23.95 

DEADLY SECRETS D 27.95 

CHOPLIFTER -D 27,95 

GENETIC DRIFT D/T 23.95 

SPINNAKER 

SNOOPER TROOPS #1-D... 35.95 
SNOOPER TROOPS #2 D... 35.95 

PACEMAKER - D 27.95 

STORY MACHINE ■ D 27.95 

EDU-FUN 

CALL FOR ITEMS AND PRICES 

THORN 

CALL FOR ITEMS AND PRICES 

NEW ITEMS 

PIG PEN - D 23 95 

BAJA BUGGIES ■ D/T 25.50 

STARBOWL 

FOOTBALL - D/T 25.50 

MASTERTYPE-D 31.95 

ALIBABA D 26.50 

JEEPERS CREEPERS - D 23.95 

PAINT - D 33.95 

KIDGRIDD/T 23.95 

MOSAIC 32K 97.95 

D - Disk T - Cassette 
C - Cartridge 

ATARI is a trademark of ATARI, Inc. 



Mastercard/VISA 
Order Toll Free 



800-558-0003 

No surcharge for cretdit carids 



VISA' 



In Wise. Call 

414/351-2007 



Sat. 



ORDERING INFORMATION 

To order by mail senci money order, certified cfieck or personal check (allow 14 days to clear) to COMPUT ABILITY '^°"- 
Include $2.00 shipping on software orders and $2.50 shipping on hardware orders (FREE OR PURCHASED). Master 
card & VISA please include card number and expiration date. WI residents please add 5% sales tax. Outside of con 
tinental U.S.A. please add 15% shipping (U.S. Funds only). Prices subject to change without notice. 



Order Hours; 

- Fri. 12 pm ■ 9 pm C.S.T, 
12 pm - 5 pm C.S.T, 

ComputAbiiity 

P.O, Box 17882 
Milwaukee, WI 53217 



PAGE 20 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



HARDWARE REVIEW: 
B. KEY 400 

INHOME SOFTWARE INC. 
2485 Dunwin Drive, Unit 1 
Mississauga, Ontario L5L 1T1 
Telephone: (416) 828-0775 

RETAIL: $119.95 



by Richard A. Benson 



What does someone who is 33 years old and still a 
kid at heart ask Santa Claus for Christmas? What 
else — a new keyboard for his computer! Of course I 
thought that my chances of actually getting one were 
slim to none, being that my wife hates the stupid 
thing that sits on the desk in the bedroom and 
occupies most of my waking hours. (When 1 am not 
playing with my IBM 3081 at work, that is). Well, 
Christmas morning I woke up to find shirts, ties, and 
last but not least, a B. KEY 400 keyboard for my 
ATARI 400. (Yes Virginia, there really is a Santa 
Claus). 

I did my best to hold miyself back from doing any 
more than just looking at it (or should I say drooling 
over it) until the kids had settled down after un- 
wrapping their presents and totally destroying the 
house. After what seemed like years (actually an 
hour and a half), I grabbed my ATARI 400 and 
settled down at the kitchen table with a cup of coffee 
for what I expected would be at least an hour of 
tearing my hair (what little there is left) out while 
trying to install it. You see, I might be able to 
program, but when it comes to anything mechanical, 
forget it. 

Inhome Software's advertisement read, "the B. 
Key 400 can be installed in 2 minutes." Well, I said 
to myself, here goes nothing. I opened up the 
instruction manual and read the first sentence. 
"TOOLS NEEDED: 1 PHILLIPS SCREW- 
DRIVER." Hey, this isn't going to be as tough as I 
thought! I removed the 4 screws on the bottom of my 
computer, lifted off the top cover, and disconnected 
the factory installed keyboard. There were no 
additional screws to worry about and the ribbon 
cable simply pulled out to disconnect it from the 
computer. Next, I snapped in the B. KEY 400 and 
proceeded to plug the new ribbon cable into the 
computer. This was the only tricky part, as the new 
ribbon cable had no plastic reinforcement on the end 
to allow you to apply the even pressure needed to 
make the correct contacts. Back went the four 
screws and I was looking at my new keyboard after 
only 5 minutes installation. (Well, so the ad 
exaggerated slightly. Actually if it hadn't been for the 
ribbon cable, I could have easily done it in 2 
minutes.) 



Next came the tough chore of putting the keys on. 
I was actually going to have my 4 year old do it, but I 
knew if I wanted to have the key that I pressed be 
what it was supposed to be I had better do it myself. 
Another 5 minutes and the installation was 
complete. My coffee wasn't even cold yet. 

For those of you who have done any serious 
editing on the ATARI 400, you will be pleased to 
know that I no longer had to wonder if I was actually 
pressing the CTRL key when moving the cursor 
around on the screen. The feel of the keyboard is 
great, as good as the 800, in fact. The only problem 
that I have found is that some of the special function 
keys have been moved around a little. This is because 
the size of the ATARI 400 keyboard is smaller than 
the ATARI 800 keyboard and in order to 
accomodate the larger size keys some adjustment had 
to be made. But I am happy to say that it took only a 
short time to make the adjustment and I find myself 
using the computer more than ever. 

In short the B. KEY 400 is the ATARI 400 owner's 
dream come true. It is so good in fact that I just got a 
48K memory board installed so that I could do 
everything that a 800 can do. 

Congratulations to Inhome Software on a quality 
product with excellent installation instructions that 
even an amateur like myself could understand. 

Let's see, what should I ask for next 
Christmas? . . . D 



■ ffiffi'rirr 




m ATARi 



Q m wm^w.-rn'Mim/m m-'v»-'^^ -■ 




''•':'lli'l»'lijli«l!li|tl'il'Mt-iii 



B 




OUR GOAL: ^ ^ ^ J 



To LIQUIDATE OVER 



WBUCNOTICE 



$1,000,000.00 

Of SOFTWARE at SACRIFICE PRICES! 

SAVE ON INSOFT • ON-LINE • DATAMOST 
BRODERBUND • PENGUIN • AND MORE! 

OFFER LIMITED TO STOCK ON HAND. 




LOST COLONY D 
HOME FILING MG 
CENTIPEDE C 
PAC MAN C 
TEMPLE OF APSHAI 
D/T 

ATTACK at EP-CYG 
D/T 

GENETIC DRIFT D/T 
DAVID'S MIDNIGHT 
MAGIC 
CHOPLIFTER D 
RASTER BLASTER D 
BUG AHACK D/T 
POGOMAN D/T 
TEXT WIZARD D 
CANYON CLIMBER 
D/T 

PACIFIC COAST 
HIGHWAY D/T 
WORDRACE D 
COMPU-READ D 
MATCH RACERS D 
PATHFINDER D 



QUICKSOFT 
LIQUIDATION 

PRICE RETAIL 

19.95 

D 39.95 

35.95 

35.95 



29.95 
49.95 
44.95 
44.95 



29.95 39.95 



23.95 
21.95 

24.95 
24.95 
21.95 
21.95 
30.95 
74.95 



32.95 
29.97 

34.95 
34.95 
29.95 
29.95 
39.95 
99.95 



22.45 29.95 



22.45 
17.95 
21.95 
21.95 
25.95 



29.95 
24.95 
29.95 
29.95 
34.95 





SALE RETAIL 

CRYPTS of TERROR D 25.95 34.95 

INTRUDER D 25.95 34.95 

ALIEN NUMBERS D 24.95 34.95 

POOL 400 C 31.95 39.95 

SPEEDWAY BLAST 30.95 39.95 

ACTION QUEST D/T 21.95 29.95 
GHOST ENCOUNTERS _ _ 

D/T 21.95 29.95 

K-DOS D 69.95 89.95 

CROSSWORD MAGIC . _ 

D 35.95 49.95 

MASTER TYPE D 31.95 39.95 

LETTER PERFECT D 119.95 149.95 

CROSSFIRE D/T 22.45 29.95 

MOUSEATTACK D 22.45 34.95 

FROGGER D/T 25.95 34.95 

GALACTIC CHASE D 21.95 29.95 





SALEretail I 


ALI BABA D 


23.95 


32.95 


GORFD 


29.95 


39.95 


WIZARD of WOR D 


29.95 


39.95 


SNEAKERS D 


21.95 


29.95 


SNAKE BYTE D 


19.95 


29.95 


BANDITS D 


25.95 


34.95 


SNOOPER TROOPS 

#1 D 


34.95 


44.95 


SNOOPER TROOPS 
#2 D 


34.95 


44.95 


ADVENTURE on a 
BOAT D 


17.95 


24.95 


BLACK FOREST D 


17.95 


24.95 


DISK lulANAGER D 


21.95 


29.95 


PROTECTOR II D 


24.95 


34.95 


SLIMED 


25.95 


34.95 


SHAMUS D 


25.95 


34.95 


WARLOCK'S 
REVENGE D 


24.95 


34.95 


PROBE 1 D 


24.95 


34.95 


KID GRID D/T 


22.45 


29.95 


FIREBIRD C 


29.95 


39.95 


DEADLINE D 


37.95 


49.95 


ZORK 1 D 


28.95 


39.95 


CYPHER BOWL T 
CRUSH. CRUMBLES, 
CHOMP D 


37.95 
21.95 


49.95 
29.95 


EMPIRE of the 
OVERMIND D 


24.95 


35.00 



fMy: 




f'^'yw 



MINER 2049er C 
APPLE PANIC D 
MICROPAINTER D 
BASEBALL D 
K-RAZY KRITTERS 
SAMMY ttie SEA 
SERPENT D 
FACE MAKER D 
THE SHATTERED 
ALLIANCE 



SALE 

37.95 
21.95 
25.95 
24.95 
C37.95 

18.95 
25.95 



RETAIL 

49.95 
29.95 
34.95 
34.95 
49.95 

23.95 
34.95 



31.95 39.95 



D-DISK T-CASSETTE C-CART 



JUST A SAMPLE OF THE SAVINGS YOU'LL FIND! 
CALL IF YOUR PRODUCT IS NOT LISTEDl 

FOR ORDERING ONLY CALL 



vVV^ 



BUY NOW!- 



this LO\N again and 

quantities of itenns 

' are limited! . - 



'Tf^^'V 



Terms of this sale:Add 4% for Visa and 
Mastercard orders. All items subject to prior 
sale. Prices subject to change without notice. 



1-800-547-8009, 

IJI%>v^Oriii 

Department 97, P.O. Box 10854 Eugene, OR 97440 

Copyright 1982 Microcomputer Support Group, INC. 



R INFORMATION 
OR ORDERING 
IN OREGON CALL 

1-503-342-1298 

No C.O.D. orders 
at sale prices. 
FREE SHIPPING 
on orders of $100.00 or more, 



THE 



AUSTIN EQUATION 



400 + ^50 



m 



MEMORY POWER FOR YOUR ATARI 400* COMPUTER 



$^4995 



Sugg. list. 



48 K AUSTIN BOARD 



TM 



AUSTIN BOARD™ FEATURES 

64K RAM Technology for improved reliability & lowest power 
consumption. 

Superior CAD/CAM generated P.C. design. 

Complete banic and board de-coupling for cleanest signal 
possible. 

Gold edge connectors. 

Lifetime warranty. 

P.C. template provided for easy ATARI 400* installation. 

Full testing. 

ATARI 800* compatabiiity with optional loop-back card 
(available for $5.00 additional). 



32K AUSTIN BOARD $94«5 



SU6G. LIST 



AUSTIN FRANKLIN ASSOCIATES 

617-772-0352 

43 GROVE STREET, AVER. MA 01432 

M/C VISA & COD ACCEPTED DEALER INQUIRIES INVITED 

'ATARI IS A REGISTERED TRADEMARK OF ATARI, INC. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 23 



UTILITY^ ^l DISK DIRECTORY DUMP 



16K disk 



by Tony Messina 



This issue's utility is rather simple in nature but 
can prove quite helpful when trying to remember 
what program is on which diskette. In order for this 
utility to work you need the following items. 1) A 
disk drive 2) a printer (40 or 80 column) 3) an 
ATARI computer with a least 16k of memory. The 
utility itself will give you a neat, formatted hardcopy 
of your disk directory (1 told you it was simple! ). The 
following article should also give you a general idea 
about lOCB's and the OPEN/CLOSE statements 
which are part of the BASIC repertoire. 

lOCB's 

Many programs appearing in A.N.A.L.O.G. use 
OPEN and CLOSE statements to perform a 
particular function. I'm sure such questions as 
(What is being opened/closed, How/Why is it 
being opened/closed and How can I open/close my 
own things?) has crossed your mind, so now would 
be a good time to find out what it's all about!! 

One of the most difficult things to do on any 
computer is INPUT/OUTPUT or I/O for short. 
Would you like to write the program (commonly 
called a driver) to print to the printer or list to the 
disk or input a character from the keyboard?? It 
really isn't all that fun. Thanks to those great ATARI 
folks who designed our systems, (the operating 
system in particular), we don't have to worry too 
much about the above-mentioned items. We can 
control our I/O through an lOCB or Input Output 
Control Block. The operating system has eight 
lOCBs. Each lOCB contains information as to the 
nature of the device we want to communicate with, 
where the driver for the device is located, where the 
buffer for the device is located, length of the buffer, 
the command we are trying to execute on the device 
(OPEN, CLOSE, PUT CHARACTER, GET 
CHARACTER etc). Timeout values (i.e. how long 
do we try to execute a command before we decide to 
give up) etc. This information is used by the Central 
Input/Output (CIO) portion of the operating 
system when communicating with the device on the 
lOCB specified. Now that we know about lOCBs, 
lets look at how we set them up. 

OPEN/ CLOSE 

The OPEN command allows us to communicate 
with a device using the CIO facility. We don't have to 
know maching language to access a device. . . we can 
use BASIC instead! OPEN just dedicates an lOCB to 



perform our command. We can think of it as 
opening a hotline to our device. The line will stay 
open until we hang up or CLOSE it. The form of the 
OPEN command is as follows: 
OPEN #IOCB,I/0 CODE, SPECIAL, DEVICE 
Parameters can take on the following values: 

lOCB - Any number from 0-7, Usually only 1 -5 is 
best since the operating system uses lOCB for the 
screen/editor, 6 for any graphics window (I'm sure 
you all have used a PRINT #6 statement), and 7 for 
LPRINT and Cassette I/O. 

I/O CODE - 4=INPUT, 8=OUTPUT, 
12=INPUT and OUTPUT, 6=DISK DIRECTORY 
INPUT, and 9=OUTPUT (APPEND TO END OF 
FILE) 

SPECIAL - Is usually but can be filled in based 
on the device you are using. If you are opening a 
screen mode other then GR.O, you would need to 
put the OR. mode number in the SPECIAL 
parameter. If you have a sideways printing printer 
(say that 10 times quickly), you could get it to print 
sideways by putting 83 as the SPECIAL parameter. 
When in doubt, use 0. 

DEVICE - Devices which we can control and 
which BASIC knows about are the KEYBOARD 
"K:", GRAPHICS WINDOW "S:", PRINTER 
';P:", CASSETTE "C:", DISK FILE 
"D:filename.ext", SCREEN EDITOR "E:", and 
RS232 PORTS "R:" 

When opening a device we must make sure that 
the parameters make sense. We wouldn't want to 
open a printer for INPUT and OUTPUT since most 
printers only allow OUTPUT. It also wouldn't make 
sense to open the graphics window for DISK 
DIRECTORY INPUT. See... it's not all that 
complicated now is it?? 

NOW WHAT HAPPENS? 

Once we have opened a device there are many 
things which can be done. Commands such as PUT 
#, GET #, PRINT #, etc can be executed by BASIC 
directly to the device we have opened. The only thing 
we have to remember is not to use an invalid 
command for the I/O CODE selected. If we opened 
the GRAPHICS WINDOW for OUTPUT for 
example, then we could not use the GET command. 
Experiment using OPEN with its associated 
commands and you'll soon become proficient in the 
mysterious world of ATARI I/O. 



PAGE 24 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



WE NOW RETURN TO EARTH OR 
HOW UTILITY #4 USES THIS STUFF 
This issue's utility opens 2 lOCBs. lOCB 1 is 
opened for output to the printer LINE 220 and 
lOCB 2 is opened for disk directory input LINE 230. 
The filename to get has been set to "D:* ,*" since we 
want them all. DEV$ is simply set to "P:" for the 
printer, I set all my codes to constants for easier 
reading. The values can be found in LINES 115-125. 
With these two lOCBs open the rest of the utility is a 
snap. We input a file name in LINE 380 and output it 
to the printer. A nice thing about the directory input 
command is that it also returns the number of FREE 
SECTORS after the last filename has been input. 
Line 385 checks for this and routes us to LINE 420 
when we are done. Another item to note is that the 
printer now recognizes ; and , so that we can format 
our output. LPRINT under certain circumstances 
will recognize these two characters but it's best to 
open a channel to the printer and do a PRINT # 
instead. This way we can be sure of obtaining the 
desired results. The remainder of the utility 
performs error checks and issues prompts for the 
user. All of the major sections have been block 
commented and should present no major problems 
when you try and figure out what is being done. 

HOW TO USE UTILITY #4 

Type in the listing and save it to your disk. You can 
now run the program. If you forget to turn on your 
printer or disk you will be razzed until you do. Just 
follow the prompts and you'll soon have a listing of 
all your directories. You can even print a title ( 18 
characters max) for each of your directories to help 
jog your memory. One last note. If your printer 
doesn't support the expanded print mode then you 
must change LINE 305 by deleting the ESC ESC 
CNTL N sequence and also deleting the *2 ) from the 
centering calculation. If you have an EPSON printer 
just change the code for expanded print to your 
appropriate code. 

That wraps it up for this issue. Have fun and I hope 
I have provided you with another useful aid. Keep 
those ideas, questions, and comments rolling in. Till 
next issue HAPPY COMPUTING!! D 



10 REN KMKKMKMKMKICmCKlCmCllMICimKKmCMKIIIC 

15 REM » UTILITY tt4 » 

28 REM * DISKCftT UER.l * 

25 REM * BY TOHY MESSINA * 

36 REN * FOR A.N.A.L.O.G. COMPUTING * 

35 REM KMMKKKKKKKKMMKXlCKMKlCKKltKMICKMlClC 

48 REN * 

45 REM KKKKKICMKMMKKKICMICKKICMK 

58 HEN » NAKE SCREEN TITLE » 

55 REM KKMMKMlCKKICMMKKMmClClCltK 

60 REN * 

65 GRAPHICS 2 : 5TART=PEEK<56eJ +PEEK (561 

)«256:P0KE STAHT+9, 6 : POKE START+10^6:P 

OKE START + H,5:P0KE START+13,5 

70 POKE 712,32:P0KE 711^10 

75 ?^6j" UQiDiQy iS □":? tt6:? It6;" 



88 ? 1*6 J" 




;? tt6 ;" 



33 
tt6; 



fci.-MHJ,»l»]' 



? »6;" uQiDiQy -J- Q" 

GHslS HiH HuCP":? »6;" 
:■':? tl6;" BY' 



85 ? tie;" 
tt6j" r=z=====: 
96 REM « 

35 REN KMKKKICKmCMKlCKlCmtK 

168 REM * VARIABLE INIT * 

185 REM KMKieKKltMKXItKICMKMK 

lie REM * 

115 DIM DEyS(2J:DIM TABS (46): DIM DJREC 

T0RVS(5J :I>IN FILENAMES (191 :DIM ANSSdJ 

128 DIRECTORVS="D:*.«":TABS=" 

125 DISK=2 : PRNTER=1 : DIRTAB=18 : C0LNID=4 
e:OUTPUT=8:NULL=0:DIRIN=6:COUNT=3:SPAC 

E=3 

130 REM * 

135 REM MKKMKKKKMKKMKKMKMX 
140 REN « GET USER INPUT « 
145 REM KKMKKKKKKICMMKKMKICK 

150 REM * 
I cc ■» "K" 

168 &EgS-"P ;";TRAP 565:? ■■ MiHII!IM!»>lin 

■^tiMihgasH ■■:: INPUT WIDTH 

165 IF WIDTH<>4e AND WIDTH088 THEN GO 

TO 160 

178 IF WIDTH=86 THEN COLMID=HIDTH : GOTO 

215 
175 DIRTAB=l:C0UNT=2:SPACE=2 
188 ? 
185 HEM « 

198 REM mCKKKMMKICKKIClCMKKlOtmC 
195 REM » OPEN DEVICES FOR « 
200 REM » INPUT/OUTPUT » 
205 REM KMMKMMKKKMMKKXICICMKICK 
210 REM » 

215 TRAP 495:LPRINT 
220 OPEN ttPRNTER, OUTPUT, NULL, DEVS 
225 TRAP 566 

238 OPEN ttDI5K,DIRIM,NULL,DIRECT0RYS 
235 REM * 

240 HEM MKKMMUmtKMKmCMKMKmtKKItlC 
245 REM * ASK FOR HEADER NAME « 

250 REM KKKMMMKMKKKKKMKMmCKKICKK 

255 REM * 

268 ? " IJ!HJ;»>>M:»i*iHi " ; ; INPUT FILEN 

AMES 

265 IF FILENAMES="" THEN FILEHAMES="'-D 

EFAULT NAME-" 

278 REM « 

275 REM MKKmCMlCMKmtKMmCICICICK 

288 REM » PRINT TITLE OUT « 

285 REM MMMMKmCMKMMlCKKKMKKlC 

298 REM * 

295 IF LEH (FILENAMES) >18 THEN GOTO 518 

380 TRAP 518 

385 PRINT «PRNTER;TABS(1,IMT((C0LWID-( 

LEN (FILENAMES)»2) ) /2) ) ; "t_" J FILENAMES 

318 ? ttPRNTER:? ttPRNTER;TABS(l,DIRTAB) 

315 REM * 

320 REM KKKKKKKmCKICmcmClCKKK 
325 REM * PRINT COLUIW ID * 
330 REM MMKMKKKKKIOCKKICMKKKK 
335 REM * 

348 FOR HEADCHT=1 TO COUNT:? tIPRNTER:" 
FILNAME/EKT LEN"; TABS (1, SPACE) ; :NEXT 
HEADCNT:? ttPRNTER 
345 ? ttPRNTER:? ttPRNTER; TABS (1, DIRTAB) 

350 HEM * 

355 REM MlCKKmCKKMKMlClCKMKMKKKKMKKlCKM 

360 REM * GET FILENAMES AND PRINT * 

365 HEM KWKXKKMKlCKMMKKWKMKKKKMlCMMKlt 

370 HEM » 

375 FOR X=l TO COUNT 

380 INPUT ttDISK, FILENAMES 

385 IF LEN(FILENAMES)<17 THEN ? ttPHNTE 

R:? ttPHNTEH;TABS(l, ( (COLIIID-16) /2) -1) ; 

FILENAMES: GOTO 426 

396 ? ttPRNTER;FILENAMES;TABS(l, SPACE); 

:NEKT H:GOTO 345 

395 HEM » 

468 REM KMMMlCKKMMKKIClCKKKMMKXMKMKlt 

485 HEM * CK IF USER WANTS NeRE « 

416 REM KKMMMltlCKKlClCKMKMKKICMKMICMKM 



ISSUE 10 



A.N.A.L.O.G, COMPUTING 



PAGE 25 



THEM ? " l>H;M!M>lii:rai ' 



USE SAME PARAMETERS (V/NJ 



:ZN 



■ AMD AMS50-M" THEM GO 
THEM GOSUB 49e:60T0 22 



415 REM # 

428 CLO SE ttPISK; CLOSE t tPBMTFR 

425 ? ■ 1 iitm - t -III til a :m'a : ■ " : : t m p ii t ans$ 

438 IF ftMSS<>"V" AND AM5S<>"H" THEN GO 

TO 428 

435 IF AM5S="M" 

GOTO 468 

448 ? 

PUT AMS^ 

445 IF ANSSO-V 

TO 448 

458 IF AMSS="V" 



455 GOSUB 490: RUN 

468 END 

465 REM * 

478 REM MMMKMKKKICKKMMMWKMKKMMKKK 

475 REM » ERROR TRAPS FOLLOW » 

488 REM MMMMKKKKMKKMKXMKXMMKKKKK 
485 REM » 

490 ? ••nl 

CHH3"J ■' INPUT ANSS : RETURN 

495 ? 

OTO 168 

580 ? "h ihi.-i:«hii*m:[iim;i*i jii:i>UJLi " : clos 

E ttPRNTE R;G0T0 168 
505_? " m ~ 

HUE" : G OTO 168 

518? ■■udEEHOila 

IIMSil8":G0T0 268 



INSERT NEH DISK AND HIT <RETUR 



PRINTER DOES NOT RESPOND!! If 



INPUT ERROR CONLV NUMBERS PLEA 



3":? "[laaaDiHi 



(see D:CHECK 2, p. 26) 

18 DATA 771,6,123,386,973,790,73,36,95 

7,38,77,893,96,789,414,6422 

85 DATA 138,83,555,565,775,274,628,478 

,181,288,688,328,603,286,382,6148 

168 DATA 891,741,931,154,989,300,49,94 

8,821,29,276,732,876,711,271,8631 



if ^„??^?=?^^' 2^®' 220, 291, 293, 179, 615, 2 

94,811,693,814,388,828,705,378,6988 

318 DATA 166,283,793,563,796,289,683,1 

88,290,366,588,369,296,778,660,7812 

P^.S^'Ifi 23,135,307,293,438,296,285,96 

5,318,322,55,17,334,135,534,4457 

468 DATA 50,308,117,84,128,386,488,484 

,898,979,588,4326 



ATARI 



GRAPHICS HARDCOPY 



Dumps anything on scieen of ATARI 
400/800 to printer. All graphics and text 
modes. Players/ Missiles/ sea ling /grey 
scale/GTlA/more! Works with EPSON, 
Centronics 739, IDS and Trendcom. 
"ATARI is a registered trademark of 
ATARI Computer Inc. 

Specify 400 or BOO and .^_ , 
^^^^^^ Printer when ordering ™" 
f ^^^^ (209) 634-8888/667-2888 '^SM 

T Vi C.O.D. 

i A^A14CR0TPONICS,inc.. 

125 N. Golden Stale Blvd. 
Turlock. California 95380 vm 



NEW LOW PRICE 
$79.95 

(Includes Cable & Software) 



/I 

^^^^ 1125 

^^^^^ Turin, 



jl 



"M 



■ liiUWli IIJ l-HIHI '.1:1:1 I H Ul'.l 



ATARI® 





LIST 


OUR 




PRICE 


PRICE 


ON-LINE 






Frogger (D) (C) 


...34.95 


23.00 


Crossfire (D) (C) 


...29.95 


19.75 


Crossfire (R) 


...44.95 


27.25 


Wizard & the Princess 






(D) 


...32.95 


22.00 


BRODERBUND 






Choplifter (D) 


...34.95 


23.00 


David's Midnight 






IVlagic(D) 


...34.95 


23.00 


Apple Panic (D) (C) 


...29.95 


19.75 


Labyrinth (D) (C) 


...29.95 


19.75 


ROKLAN 






Gorf(D) 


...39.95 


26.50 


Gorf (R) 


...44.95 


29.75 


Wizard of Wor (R) 


...44.95 


29.75 


Ami Sub Patrol (C) 


...19.95 


13.25 


THORN EMI 






Submarine Commander 






(R) 


...49.95 


35.75 


Jumbo Jet Pilot (R) 


...49.95 


35.75 


SYNAPSE 






Chicken (D) (C) 


. . . 34.95 


23.00 


Nautilus (D)(C) 


...34.95 


23.00 


Claim Jumper (R) 


...44.95 


29.75 


Picknick Paranoia (R) 


...44.95 


29.75 


INFOCOM 






Zorklll(D) 


...39.95 


26.50 


Deadline (D) 


...49.95 


33.00 


Starcross (D) 


...39.95 


26.50 


KBYTE 






K-Razy Shootout (R) 


...49.95 


33.00 



COMPUTER SOFTWARE 

SPECIALS? 

NO, THESE ARE OUR 

EVERYDAY LOW PRICES 



(D) = Disk (CI = Cass. |R| = Cart, 

Prices Subject to Change 

Send for Free Catalog 



PHONE ORDERS: 

1-800-637-3095 
IL, AK, & HI Call: 
1-217-367-5774 

HRS.: 9-6 MON.-SAT. 

MAIL ORDERS TO: 

SECTOR ONE 

1001 BRIGHTON 

URBANA. IL 61801 



Add $2.00 for postage and handling • Mastercard 
and Visa orders add 4% service charge (include card ti 
and exp. date) • Personal checks and M.O. also 
accepted • Illinois residents add 5% sales tax • 
Please specify computer type • MOST ORDERS 
SHIPPED WITHIN 24 HRS 

Atari is a registered trademark of Atari. Inc. 



ATARI® 





PRICE 


PRICE 


DATASOFT 






Text Wizard (D) 


..99.95 


66.00 


Spell Wizard (D) 


..79.95 


52.75 


Graphic Master (D) 


..39.95 


26.50 


The Basic Compiler (D| 


..99.95 


66.00 


DON'T ASK SOFTWARE 






S.A.M. (D) 


..59,95 


39.50 


LJK 






Letter Perfect (D) 


149.95 


107.25 


Letter Perfect (R) 


199.95 


143.00 


Data Perfect (D) 


..99.95 


71.50 


Edit 6502 (R) 


199.95 


143.00 


VISICORP 






Visicalc(D) 


250.00 


175.00 


ANCHOR AUTOMATION 






Signalman Atari Modem 






MKII 


..99 00 


7600 



HAYES MICROCOMPUTER PRODUCTS 

Hayes Stack 
Smartmodem 289.00 219.00 

MAXELL 

MD1 5.25"boxof 10 51.90 27.50 



WICO 

Joystick 

Joystick Deluxe 

Trackball 

TG PRODUCTS 

TrakBall 

IN-HOME SOFTWARE 

Atari Keyboard 



..51.90 27.50 

..29.95 19.75 

..39.95 24.25 

..69.95 46.25 

..64.95 43.00 

119.95 92.50 



AND MUCH MORE 



AND MUCH MORE 



PAGE 26 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



D:CHECKII 



16K disk 



D:CHECK by Istvan Mohos 
Revision 2 changes by Tom Hudson 



In issue #8 of A.N.A.L.O.G. we introduced a 
program called D:CHECK, written by Istvan Mohos. 
D:CHECK's purpose was noble enough: help disk 
users to find typographical errors in the programs 
they typed in from the magazine. Unfortunately, 
D:CHECK has a minor flaw that can cause some con- 
fusion. This article will present a set of modifications 
to D:CHECK that will correct the problems. 

The Changes 

For those who already use D:CHECK, there are 
only a few changes. The lines affected are 105, 125, 
130, 140, 150, 360 and 365. For those who do not 
use DrCHECK yet, the entire program with changes 
is listed at the end of this article. 

The main problem with D:CHECK shows up if 
(1) an entire line is missing or (2) a line is mistyped 
with a different number of characters than the ori- 
ginal. Either of these problems may confuse the 
checksum routine in D:CHECK, giving incorrect 
checksum values for the rest of the program. 

Since the new checksum routine will only work 
with programs starting with issue #10, D:CHECK2 
will ask for the issue number. If the program being 
checked is from an earlier issue, D:CHECK2 will 
use the old checksum routine, and so will match 
the D:CHECK DATA from that issue. This was done 
so that readers who order back issues will be able to 
check those programs with the new CHECK pro- 
gram. 

The last modification allows the user to simply 
enter the filename (D:filename) to be CHECKed. D 

Description of Changes 

LINE DESCRIPTION 

105 Revision 2 credit. 

125 Set up a string for the filename. 

130 Accept the filename via INPUT statement. 
(Remember to use the "D:" prefix!) 

140 Find out what issue the program is from. 

150 OPEN the requested file (LIST format). 

360- Adjust checksum routine if program is from 
365 issue #10 or later. 

Abbreviated Instructions 

For those who have not used D:CHECK, here is a 

step-by-step explanation of how to use D:CHECK2: 

1. Type in the program listing from the magazine. 

(DO NOT type in the "D:CHECK2 DATA"!) 



2. LIST your program out to the disk (i.e. LIST 
"D:yourprog"). 

3. RUN D:CHECK2. 

4. D:CHECK2 will ask for filename. Respond "D: 
yourprog". 

5. D:CHECK2 will ask for the issue number. If the 
program you are checking is from issue 10, type 
"10". 

6. D:CHECK2 will execute and display final in- 
structions. At this time you can check the D: 
CHECK2 DATA from the magazine against the 
results D:CHECK2 put out to the file called 
"BUG". 

7. If your BUG data does not match the D:CHECK2 
DATA, check the line that corresponds to the 
DATA value that is incorrect. For example: 

100 DATA 234, 34, 120, 254, 23, 78, 34, 
198, 202, 134, 233, 102, 97, 134, 33, 1910 

In the above line of BUG, if the value 254 is in- 
correct, then the third line after line 100 in your 
program is incorrect. Note all errors and then EN- 
TER your program in order to correct it. D 



ine REH [liiiJiia debugging aid 

BV ISTUftN MOHOS 
185 REM VERSION 2 MODS BY TOM HUDSON 
110 GRAPHICS 0;? ;? "This run will LIS 
T data stateMents with the naHe: m 
B, to the disk," 

120 ? ;? "The [ilffpl DATA is created by e 
ualuating each character of a user pro 
graH, LISTed to disk.":? 
125 DIM FiStlSJ 

130 ? "ENTER FILENAME"; ; IN PUT FIS 
135 PIK=PEEKC559J :Z=e:REM aEDMElffi 
140 ? -.7 "ENTER ISSUE NUMBER" ;: TRAP 14 
8: INPUT ISSUE 

150 TRAP 130:OPEN »1,4,0,FIS 
160 ON K GOTO 238,338 

170 ? "1^":' "DISABLING SCREEN ... STAND 
BY.,.":FOR 1=1 TO 808:NEKT IlPOKE 559, 
Z:REM debug before poking 
180 LINECOUNT=Z:DIM I5 tl26J 
190 TRAP 210:INPUT ttl; IS : LINECOUNTrLIH 
ECOUNT+1 
208 GOTO 198 

218 CLOSE «l:Q=INT(LINEC0UNT/15J :DIM C 
tLINEC0UNTJ,RC0J,5Sf53 : IF tLINECOUNT^Z 
OR I$=""> THEN 568 
215 IF A5CtlSCljlJ5<48 OR ASCClStl^lJ) 
>57 THEN 568 
220 X=1:G0T0 150 
230 RANGE=Z:LINE=Z:FOR 1=1 TO 5:SSCI,I 

}= NEHT I 

248 COUNT=Z 

250 INPUT «1;IS:T=1:C0UNT=C0UHT+1 

268 IF ISIT,T><>" " THEN SS CT, T)=l5 CT, 

T3 :T=T+l:G0T0 268 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 27 



278 LINE=UflL(S$5 

28B RCRANGE3=LXNE:R0NGE=RANGE+1 

Z9e TRAP 320: INPUT ttl;lS 

396 COUHT=:COUMT + l:IF C0UMT=15 THEN 248 

3ie GOTO 296 

320 CLOSE ttl:K=2:G0T0 150 

330 FOR 1=1 TO LINEC0UNT:CHECK5UM=Z 

340 GET ttl^ NUMBER :PRODUCT=X*NUMBER: CHE 

CK5UM=CHECK5UM+PR0DUCT:K=K+1:IF K=4 TH 

EN K=l 

345 IF NUMBER=155 THEN 360 

350 GOTO 340 

360 CHECKSUH=CHECK5UM-1000«IHT CCHECK5U 

M/1O80J :CCI>=CHECK5UM:IF I55UE>9 THEN 

X=2 

365 NEXT I 

370 CLOSE »l:OPEN ttl , 8, 0, "D : BUG" : LINE= 

RtZ) :ITEM=Z 

380 C0UNT=15:T0TfiL=Z:IF LINEC0UNT<15 T 

HEN COUNT=LINECQUNT 

398 PRINT ttljLINE;" DflTfl "; 

400 FOR 1=1 TO COUNT :DflTUM=CC15«ITEM+I 

} :PRINT ttljDftTUM;","; :TOTflL=TOTftL + DftTU 

M.'NEXT I 

418 PRINT Hi; TOTAL 

420 ITEMzITEM+1 : LINEC0UNT=LINEC0UNT-15 

:IF LIHECOUHKl THEN 450 

430 LINE=RIITEM3 

448 GOTO 388 

450 CLOSE ttl:POKE 559, PIK 

468 ? "HiQTo Check F^nB data against pri 

nted data statewents, type NEM. Th 

en type:" 

478 ? "ENTER "; CHRS <34J ; "D : BUGgHIIECl 

Type LIST after the 
READY proMpt." 

480 ? :? "The line nuHber of each data 
stateHentcoincides with the first lin 
e of the" 



498 ? "user prograM which the data sta 
te»ent evaluates." 

588 ? "NuHbers within each data staten 
represent consecutive lines of 
user prograH." 
"The last numb er i s the total," 
:? "Check the lEBD number of eac 
Mient against the printed wer 



ent 
the 
510 
528 



h state- 
sion;" 
538 ? 
heck 
nt." 

548 ? 



only in case of a discrepancy c 
each number in the data stateme 



"Make note of the lines containi 
"9 *he b ugs. T hen ENTER "JCHRS t34J J "D : 
yourprogiaajiia:!" 

550 ? "to make the corrections. ":END 
568 POKE 559, PIK:? "rQ":? "Your typed- 
in_ program was not properlyLISTed to d 
iSk ." 

578 ? :? "Please list your program to 
disk, thenRUN "JCHR5C34) ;"D:CHECK"jCHR 
SC34);" again. ":CLR :END 



(see D:CHECK 2, p. 26) 

188 DAT* 198,8,224,968,864,530,628,951 

,694,717,939,611,599,712,970,9605 

215 DftTft 480,344,376,683,582,817,457,5 

76,232,67,719,435,930,528,324,7558 

350 DATA 718,723,755,436,253,444,269,5 

65,540,450,729,508,812,331,524,8057 

490 DATA 255,665,387,213,132,789,489,7 

83,509,4142 











CONTROL CHARACTERS 






Som 


e program listings 


reproduced in A.N.A.L.O.G. may contain "strange" characters not shown on | 




the ATARI keyh 


oard. 


These are special characters 


which use 


the CTRL, ESC 


and "ATARI LOGO" 1 




(INVERSE) key 


s. Shown below is a list of these ( 


iharacters 


and the keystrokes used to get them. D 1 


« 





CTRL 


t 








■ 


INVERSE CTRL 


M 







CTRL 


A 




•■ CTRL Z 




■ 


INVERSE CTRL 


N 







CTRL 


B 




t ESC ESC 




n — 


INVERSE CTRL 










CTRL 


C 




t ESC CTRL UP-ARROH 


E — 


INVERSE CTRL 


P 







CTRL 


D 




« ESC CTRL DOHN 


-ARROH 


r --- 


INVERSE CTRL 


a 







CTRL 


E 




♦ ESC CTRL LEFT 


-ARROH 


s — 


INVERSE CTRL 


R 







CTRL 


F 




* ESC CTRL RI6HT-ARR0M 


■• 


INVERSE CTRL 


S 







CTRL 


G 




« CTRL , 




n — 


INVERSE CTRL 


T 







CTRL 


H 




* CTRL ; 




■ 


INVERSE CTRL 


U 







CTRL 


T 




H ESC SHIFT CLEAR 


1 — 


INVERSE CTRL 


V 







CTRL 


J 




i ESC BACK S 




II 


INVERSE CTRL 


H 







CTRL 


K 




\ ESC TAB 




■■ 


INVERSE CTRL 


X 


■ 





CTRL 


L 




C INUEH5E CTRL 


§ 


T — 


INVERSE CTRL 


V 


^ 





CTRL 


N 




i: INVERSE CTRL 


A 


i: — 


INVERSE CTRL 


z 


^ 





CTRL 


N 




1 INUER5E CTRL 


B 


D 


ESC DELETE 




■ 





CTRL 







a INVERSE CTRL 


C 


D — 


ESC INSERT 




« 





CTRL 


P 




:i INVERSE CTRL 


D 


Q — 


ESC CTRL TAB 


(CLR) 


r 





CTRL 







n INVERSE CTRL 


E 


Q 


ESC SHIFT TAB CSETJ 1 


— 





CTRL 


R 




fA INVERSE CTRL 


F 


■ — 


INVERSE SPACE | 


+ 





CTRL 


5 




^ INVERSE CTRL 


G 


■ — 


INVERSE _ 




• 





CTRL 


T 




f INVERSE CTRL 


H 


D — 


INVERSE CTRL 


, 


■ 





CTRL 


U 




f INVERSE CTRL 


I 


D — 


INVERSE CTRL 


/ 


J 





CTRL 


W 




^ INVERSE CTRL 


J 


II — 


INVERSE 1 




T 





CTRL 


H 




L INVERSE CTRL 


K 


Q 


ESC CTRL 2 




X 





CTRL 


X 




J INVERSE CTRL 


L 


[| 


ESC CTRL BACK 


' S 


1 


"~^^ 


CTRL 


V 








u — 


ESC CTRL INSERT J 



PAGE 28 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



MAGIC KEYPAD 



A Program that writes Data Statements 
for your ATARI 



16K disk 

by Greg Peck 



•A- . 




I'm sure that you will agree that one of the most 
tedious activities on your computer is typing in 
DATA statements. Whether it's from a listing in 
your favorite magazine or a piece of music to dress up 
your program, it tends to be more work than it's 
worth. 

Well, your worries are over. MAGIC KEYPAD 
will take care of the work for you. All you do is type 
in the data and MAGIC KEYPAD will take care of 
line numbers, the command, commas, how much 
will fit on each logical line and LIST the file to your 
disk. And that's not all! You also have the option of a 
numeric keypad. 

The program checks keyboard input and changes 
U,I,0 into 4,5,6; J,K,L into 1,2,3 and M into 0. 
Presto! You've got a numeric keypad. Granted, it's 
not perfect, but for the price it will do quite well. I 
got the idea from an ad for that little Epson 
computer. 

To use the program, begin by answering the 
prompts. First, you select to either pack (fill to 
capacity) the DATA statements or have from 1 to 9 
separate elements in each DATA statement. Then 
choose whether you want the keypad or not. After 
that, type in the first line number to be used in the 
DATA statements. The lowest line number available 
is 500 to prevent the DATA statements from writing 
over part of the program. The last prompt to answer 
is the file name. Your DATA statements will be 
LISTed under this name, so be sure it hasn't been 
used before. Later, you can ENTER the DATA 
statements into your program. 

You will then be told the line number and the 
current number of the "data element" you are 
working on. Just type in whatever you want in the 
DATA statement and press RETURN. Everything 
will be taken care of. Type "1E9" if you want to 
move to the next line number. When you're done 
just type "END" as your response to the prompt. 
The screen will go blank while the program is erased 
and the data statements are LISTed to the disk drive. 
The READY prompt will then appear on the screen. 
If you type LIST you will see the DATA statements 
that the program wrote. D 



Lines 10 - 100 set up the strings and prompts the user. 
Each input is trapped so that an error will 
not stop the program. 

Lines 110-120 establishes the file name to be listed 
later and sets LL (Line Length) to 10 to 
cover the line number and command. 

Lines 130-240 contains the loop that controls data 
input. It loops once for each element in the 
DATA statement. NOE is the variable for 
the Number Of Elements. Then, it checks 
FLAG to see if the user wants to use the 
keypad. Lines 170 & 180 check for flags 
to jump out of the loop. Lines 190 & 200 
check the line length. Line 210 adds a 
comma if needed. Line 220 takes care of 
the first element in the DATA statement. 
Line 230 adds the most recent input to 
LINE$. 

Lines 250-290 clear the screen, print the DATA 
statement, turns on the FORCED READ, 
stops the program, turns off the FORCED 
READ and returns to the main program 
loop. 

Lines 300-390 create the numeric keypad. If the 
RETURN key is pressed, K will equal 155 
and the program will return to the main 
loop. 

Lines 400-470 deletes the program and LIST the 
DATA statements to the disk drive under 
the name input at the beginning of the 
program. Line 470 ends the program and 
returns the computer to the normal 
operating mode. 



Variable Table for MAGIC KEYPAD. 
E$ - holds user input 

LINE$ - the content of the DATA statement 
C$ - a comma "," 
CO$ - the command "DATA" 
NAME$ - name of file 

NM$ - "D: (added to NAME$ for disk operation) 
K - number of character from Keyboard 
NOE - Number Of Elements 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 29 



FLAG - l=keypad input l=normaI input 

LN - current Line Number 

I - counter in main program loop 

LL - Line Length 

X - first line number and counter in keypad 

for - next loop 



le DIM E$C2e0).LINE$(20e),C$C5),C0$C18 
J , NHS C18) , NAMES 1193 : CS=", " : C05=" DrtTO 



" ENTER NUMBER 
OR PRESS 'P* T 



2e GRAPHICS e:? :? :? 

F ELEMENTS CLIHIT 91 

PACK DATA" 

30 OPEN tt3,4,8,"K:":eET tt3,K:CL0SE »3: 

IF CHR$CK)="P" THEN NOErSBsGOTO 60 

48 TRAP 48888: TRAP 48: IF UAL CCHRS (K)) > 

8 AND UALrCHR$CK)]<18 THEN NQE^UAL tCHR 

$CK)) :GOTO 68 

58 GOTO 28 

68 ? :? " PRESS -K- TO USE KEYPAD": OPE 

N »3,4.8,"K:":GET tt3,K:CL0SE tt3:P0KE 7 

64,255:IF CNRSCK)="K" THEN FLA6=1 

78 TRAP 48800: TRAP 78:? :? :? " INPUT 

FIRST LINE NUMBER ": INPUT K:LH=K-18:IF 

K<588 THEN 78 
88 TRAP 48888: TRAP 88:? :? :? " INPUT 
NAME OF FILE C8 LETTERS MAX.) ": INPUT N 
AMES 

98 IF LENCNAMESXl OR LENCNAME$)>8 THE 
N 88 

188 IF HAMESC1,1J-" " THEN 88 
118 READ NM$:NMS(LENCNM$3+13=:NAME$:LL= 
18 

128 DATA "D: 

138 FOR 1=1 TO NOE:? "H":? :? "IE? MR! 
TES DATA 'END* ENDS PROGRAM" : ES=" " 
148 ? "144INPUT ELEMENT NO. ";lj" LINE 

NO. "'LN+IS 
158'if'fLAG<>1 then INPUT ES 
168 IF FLAG=1 THEN GOSUB 388 
178 IF ES="1E9" THEN GOTO 258 
188 IF ES="END" THEN 488 
198 LL=LL+CLEHCES))*l:IF LL>114 AND NO 
E<18 THEN GOTO 28 
208 IF LL>114 THEN 258 

218 IF I>1 THEN LINES fLEN CLINESS +13=C$ 
228 IF 1=1 THEN LINEi=ES 
238 IF I>1 THEN LINES CLEN CLIHES3+13 =ES 
248 NEXT I 
258 POKE 789.4:? "H":LN=LN+10 : POSITION 

2,5:? LN;COS;LINES:? " COHT " 
268 POSITION 0,0:POKE 842,13:ST0P 

278 POKE 842,12:? "« 

S="1E9" THEN I=e:GOT0 138 

288 IF KNOE THEN 1=1 : LL=18 :G0T0 228 

298 GOTO 138 

lll:OPEN tt3,4,0,"K:":6E 
K=155 THEN RETURN 
THEN ? 



;POKE 789,18:IF E 



"4"; 
"5": 



388 FOR X=l TO 

T tt3,K: CLOSE tt3:IF 

318 IF CHRSCK3="U" 

="4": GOTO 398 

328 IF CHRSfK3="I" THEN ? 

="5": GOTO 390 

338 IF CHRSCK>="0" THEN ? 

="6":G0T0 398 

348 IF CHRSCK3="J" THEN ? 

="1":G0T0 398 

358 IF CHRSCK}="K" THEN ? 

="2": GOTO 398 

368 IF CHRSCK3="L" THEN ? 

="3": GOTO 398 

378 IF CHRStKJ="M" THEN ? 

="8": GOTO 398 

388 ? CHRSCK); :EStX,X]=CHRSCK3 

390 NEXT X: RETURN 

488 POKE 789,4:? "H" : POSITION 2, 5: FOR 

1=18 TO 188 STEP 18:? I:HEXT I:? "CONT 

418 POSITION 0,0: POKE 842, 13: STOP 
428 POKE 842,12:? "H":P0SIT10N 2,5:F0R 
1=198 TO 380 STEP 18:? I: NEXT I:? "CO 
NT" 
438 P8SITI0N 8, 8: POKE 842, 13: STOP 



ESCX,XJ 
ESCX,X3 
"6";:ESCX,XJ 
"1"; :ESCX,X) 
"2"; :eScx,X3 
"3"; :ESCX,X3 
"0"; :ESCX,X3 



448 
1= 

NT 

458 

468 
1= 

ST 

478 

D": 



POKE 842,12:? "R" : POSITION 2, 5: FOR 
318 TO 488 STEP 18:? I: NEXT I:? "CO 

POSITION 8,8:P0KE 842,13:ST0P 
^fS'*f«®l?i** = ' "«":P0SITI0N 2,5:F0R 

-Inhs?? T? ?I^^*?r ^'"^"^ ^=- "" 

? "POKE '842, 12: POKE 7e9,18:GR.8:EN 
POSITION 8,8:P8KE 842,13:ST8P 



(see DiCHECK 2, p. 26) 



18 DATA 134,191,649,889,818,952,247,99 
8,298,357,291,664,528,121,843,7676 
168 DATA 791,551,59,999,874,559,141,56 
9,742,566,615,871,834,721,176,9868 
318 DATA 144,116,142,185,116,127,118,7 
15,795,588,684,205,618,199,616,5288 
468 DATA 349,679,1828 



Atari® Users ii 

NOW AVAIL ABLE... 

MIGHTY BYTETM Disk Copier. A 
backup copier that allows you to 
select sectors, identify and write bad 
format. Copy almost any disk. Tlie 
most powerful copy system available 
today on Atari® 400/800 computers. 

Only $29.95 + $1 shipping 

VISA & MASTERCARD call now 
(815) 968-2228 for fast delivery 

or send payment to: 

MIGHTY BYTE COMPUTER 

828 Green Meadow Ave., Dept. AG 
Rockford, Illinois 61107 



The Light Pen 



at^thc 



Right Price: 



Shown actual size. 



S0095 

^^^HH| ^^^ Each i 



SPECIAL 

INTRODUCTORY 

OFFER! 



Less is more. This 
maxim has never been 
more true than now with 
the introduction of our new 
Edumate Light Pen. This 
affordable and reliable tool 
was originally designed and 
developed for use with our 
Learning Center educational soft- 
ware — however, it is the perfect 
accessory for your Atari 400/800, 
VIC-20 or Commodore 64, regardless 
of application. Response has been so 
overwhelming that we now announce a 
new price schedule for quantity orders: 

1-4— $29»^ each 

5-24— '20°^ each 25-99— ^19^» each 



100 and more— H7®^ each 

Order now! See your local dealer or order direct. 

New catalog $2.00. Visa and MasterCard accepted— 

please add $2.00 for postage and handling. 

Call toll free! 

1-800-334-SOFT 

DEALER INQUIRIES INVITED 

•*• ^^ a division of FUTUIUS HOUSE — dept. al 

P.O. "box 3470, chapel Mil, nortli Carolina 27514, 919-967-0861 



1983 - Take Control 

A FINANCIAL WT/ARn I.5 




THE HIGHLY ACCLAIMED PERSONAL FINANCE SYSTEM FOR ATARI* 



Budget Forecast- 26 expense categories 
Check Entry -easy data entry -scan & modify 
26 major & 36 sub-categories -information bioclc 
Check Search -single or multiple parameters - 
(up to seven) to search entries 
Tabulations -detailed expense vs. budget 
comparisons by month, year-to-date, category 
Bar Graphs- screen displays in graph form 
expenses vs. budget -by month or category - 
printing with graphic capable printers 



Check Reconciliation -fast clearing of resident 
checks & deposits, complete summary report 
Checkwriter- prints your custom checks 
Printouts- most popular printers • Audit Report 
Multi-Colored Graphics • Audio Enhancements 
7 Utility Programs • User- Friendly Operation 
Easy To Use Instruction Manual 
Handsome Tinted Plastic Storage Case 



The system is designed for Atari computers having a 
minimum of 24K and operating from a disic drive. The 
price is only $59.95 plus $3 for handling/postage. 
If your dealer doss not have A Financial Wizard . . . 
Telephone orders are accepted on 
Mastercharge or Visa credit cards. Mail order must be 
accompanied by check or money-order or credit card #. 
Dealer Inquiries invited. (405)751-2783. 



'trademark of Atari Inc. 



OK residents ad 4% Tax. 



A Financial Wizard , 
Exclusively thru 

D CHECK ENCLOSED 

NAME (Print) 

Address 

City 

Card# 



i:ii\i Lii\ii= 



COMPUTER CENTERS of OKC ' 



D VISA 



'10944 North May 
Oklahoma City, OK 73120 
(405)751-2781 

D MASTERCHARGE 



State. 



.Exp.. 



-Zip- 



-Sig.. 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



irSHERE! 



^♦^' 



KAN^^ 



,.^^ 



#v's 



'£/^. 



m 



THE ATARI 1200XL HOME COMPUTER 



by Lee Pappas 



"We at ATARI believe that the model 
1200XL is a new generation in home comput- 
ing, a culmination of our experience in hard- 
ware design." These words come from 
Raymond Kassar, ATARI'S chairman and chief 
executive. 

ATARI has just pulled the post-Christmas wrap- 
ping off of its latest personal computer — the 
1200XL. New design. New features. New questions 
as to ATARI'S place in the computing world. Last 
issue's editorial covered many of the problems 
ATARI has been experiencing of late, and although 
hardware wasn't the main problem we were con- 
cerned with, suddenly the 1200XL has been thrown 
upon us. Just what is the 1200; and what does it do 
that the 800 (and, for that matter, the 400) does 
not? 

The 1200XL Differences 

The 1200XL comes with 64K of RAM. As with 
the 800, once the BASIC cartridge is used, you are 
down to 37902 bytes of free RAM. However, there 
the similarities end. The 1200 has a 16K ROM pack 
compared to the lOK unit of its predecessors. The 
16K ROM can be completely bypassed, and — with 



no ROM cartridge in the slot — it allows 64K. 
However, the computer will now be incapable of 
doing anything until the user puts in some sort of 
operating system. The expanded ROM operating 
system capabilities will be explained later on. 

The most important feature of the 1200 however, 
is that it is ALMOST fully software compatible with 
the 400 and 800. Read ALMOST We didn't have 
enough time to try all the software available, but we 
do know that Letter Perfect and several other pro- 
grams will not operate on the 1200. LJK, for in- 
stance, has announced they will have a revised ver- 
sion for the 1200. Cartridges now go in the left hand 
side of the new computer. There is no door to open 
and close, and the power is automatically triggered to 
"reboot" any new cartridge inserted (no need to turn 
power on and off by hand — the computer knows 
how). Because of some physical differences, many 
third party cartridges will NOT fit in the 1200XL. 

On the left panel is the on/off switch, and near the 
front, angled at about 30° are only two controller 
ports, not four. There are no openings of any kind on 
the front or right hand side; no cables dangling out all 
over the place. The channel selector switch, monitor 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 33 



jack, TV cable plug, and serial port are all on the rear 
panel. The television cable has RCA type connec- 
tors and is removable so that all cables can be dis- 
cot\rvected from the computer. The serial port is 
identical to that on the 400/800 and will take all the 
peripherals of its predecessors, although a new ver- 
sion of the 410 and 810 are on the way. The newer 
disk drive is rumored to have 180K of disk storage. 



t-flEt-IORV 







The 1200XL cabinet is a cream and dark brown high 
impact plastic, with a new brushed metal strip, where the 
new keys lie. Just above that is a clear plastic strip 
covering the 3 LEDs and key labels. 



Special Features 

The most radical difference in the 1200XL is the 
strip of metal keys residing just above the slightly re- 
arranged keyboard. The 11 metal pushbuttons 
consist of the System Reset key, remotely located to 
the left of the 1200XL logo. This key is more diffi- 
cult to press, making programming "accidents" less 
likely. To the right of the logo are the newly- 
positioned START, SELECT, and OPTION keys, 
followed by 4 new function keys, the HELP button, 
inverse video key (no more ATARI logo key on the 
keyboard), and the BREAK key. 

The HELP key will work with selected new pro- 
grams, to aid the user in the use of that piece of soft- 
ware. When pressed with no cartridge in place, for 
instance, the computer displays the self-diagnostic 
mode. From here you can check for ROM errors, 
bad memory locations, the sound channels, and all 
the keys on the keyboard. All this is a little gim- 
micky, but it does work. The new function keys 
allow the user to move the cursor up, down, left, or 
right (these replicate those also found on the key- 
board, but are one touch and don't require the use of 
the CONTROL key). If pressed with the SHIFT key, 
Fl will bring the cursor to the top left (HOME) 
position without clearing the screen. F2+SHIFT will 
bring the cursor to the bottom left corner. Function 
key F3+SHIFT will cause the cursor to move to the 
far left of a logical line, and F4+SHIFT moves the 
cursor to the far right of a line. 



B^QD OR Cma TO EMIT 



Selection r of the diagnostic HELP screen displays a 
ROM and RAM memory test. 




An audio-visual test in the diagnostic mode plays 
musical notes to check the POKEY chip for operation of 
all 4 voices. 



t- C-: ^^■ e:; ci ri r r> t e s- t 



«12345e789«<> . 

as OMCHTVUIOI>-:_„ 

• F S H J K L : -r - " 
Z K C V B M ft , .r 



BSai Off CH13 TO EMIT 



The keyboard test allows the user to check any of the 
keys on the 1200'XL for proper operation and contact. 



PAGE 34 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 




HYPERCARTRIDGE® 

for ATARI® 400/800 * 

16K $39 

w/o EPROMs/ROMs 



FOR SOFTWARE DEVELOPERS AND HOBBYISTS! 

• extend memory of 16K RAM and 32K RAM computers 

• create 16K cartridges easily with an EPROM programmer 

• combine ATARI® BASIC ROMs with your own subroutines on 
ROM/EPROM 

• eliminate need for disk drive and extra RAM for lengthy programs 



CONFIGURATIONS: 

#1 Any combination of 4 2532 
EPROMs/2332 ROMs 

#2 Two ATARI ROMs and two 
2532's (or 2332's) 
SPECIFY WITH ORDER 



2532 4K EPROMs 

$7.50 each 

with cartridge order only 




CHAMELEON COMPUTING® 



Dept. of Physics & Astronomy, Box 119-L 
Dickinson College, Carlisle, PA 17013 

(717) 245-1717 

Please add: $1.50 shipping/handling 

PA residents add 6% sales tax 

Quantity discounts available CHECK, MC, VISA 

• Trademark of ATARI. INC 




32k RAM 

FOR 

ATARI 400/800 



Only Tech'Data can offer such top quality at so 
low a price. Our Ram board features: 

• Lifetime Warranty 

• Gold-plated edge 
connectors 

• Compatability 
with Atari 400/800 

Dealer Inquiries Invited 

800-237-8931 
In Fla.: 813-577-2794 



V 



Tech 'Data Corporation 

3251 Tech Drive North, St. Petersburg, FL 33702 





»^ THE 

"^ ^BIG MATH 
ATTACK™ 

Challenging new math program . . . 

Sharpen your skills by entering the correct answer 

before the equation lands' on your city! Provides 

hours of educational entertainment ^^ ''OlV " 

Features: 

• Full color 

• High resolution graphics 

• Animation 

• Sound 

• Four math functions (+, ■, X, -^) 

• Two levels for each function 

Recommended for grades 1 -6. Available for the ATARI & APPLE 11. 

ATARI 16K (cass.) 520.00 

ATARI 24K (disk) S25.00 

Requires ATARI BASIC cartridge 

APPLE II (disk) DOS 3.2/3.3 525.00 

Requires Applesoft Basic in ROM. 

Ask for it at your local computer store. 





or order direct 



'^.H.E.S.I.S. 



PO. Box 147 
Garden City, Ml 48135 
(313) 595-4722 



Please add: 

SI. 50 shipping/handling 

51.50 CO,D. 
WRITE FOR FREE CATALOG 
DEALER IMQUIRIES WELCOME 



MONARCH r\ 
MAKES ATARI 
BASIC FLY. 




With ABC™, Monarch's | new BASIC 
compiler for ATARI 400" and 800, you 
develop and debug pro-1 grams using 
your ATARI BASIC car- #tridge, then 
use ABC to transform ■ them into 
compact code that runs%up to 12 
times faster, without the ^cartridge 
(and protects your source^code, too). 
40K and disk required. ^ For your ABC 
diskette and manual^send check or 
money order for 4^ $69.95 (or $9.95 for 
manual alone). ^^ Monarch Data Systems 
^^^RO. Box 207, Cochituate 
^^^^MA 01778, (617) 877-3457. 



■■I Mas 
III inqu 



Mastercard/Visa by phone. Dealer 
inquiries invited. Mass. residents add 
5% sales tax. ATARI, ATARI 400, and 
ATARI 800 are trademarks of ATARI, Inc. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 35 



When used with the CONTROL key, Fl will now 
disable the keyboard ("locking" it up so no one can 
type), and when pressed again will free it up. F2+ 
CNTRL shuts off the screen DMA: when DMA 
(Direct Memory Access) is disabled, the screen goes 
black, and the processing of the computer is in- 
creased, as now it doesn't have to waste time putting 
information on the screen. Math calculations can be 
speeded up by as much as 35% by using this feature. 
At any time during a program, you can enable the 
screen to check what's going on, then shut the screen 
off again to speed things up. Function F3+CNTRL 
will shut off the keyboard "click". The IZOOXLhas 
no internal speaker — the keyboard clicking sound 
now comes from the TV or monitor. F4+CNTRL 
will give you the European character set. 




Function key F4, when pressed with the CONTROL 
key, will provide the European Character set. 



AI 



so. 



The inverse video key replaces (or rather dupli- 
cates) what the ATARI logo button on the 400/800 
accomplished. There are also three LEDs, just above 
the 1200XL logo. One is for power ON; the others 
show various functions, such as European character 
set in use, etc. 

Some of the software features of the 1200 include 
user programming of the function keys (even the 
HELP key ). Also, most of the keys on the 1200 key- 
board are redefinable. The keyboard is of the 
QWERTY type found on most typewriters, but 
through software you can change the keyboard 
format to Dvorak or alphabetical (see Issue 9, page 
105). 

The new operating system allows you to alter the 
rate of the auto-repeat. Through software you can 
Kave the characters put on the screen at either faster 
or slower rates, while holding down one character 
key. 

Of course, the most visible attribute to the 
1200XL is its sleek, low cabinet. I always thought of 



the 400/800 as quite futuristic, but next to the 
1200XL, they do look rather "clunky." The inside 
of the 1200 is also sleek, as nearly all of the compo- 
nents are on a single board, thus reducing problems 
in reliability. 

To quote ATARI, "with its user aids and beautiful 
packaging, the model 1200XL is one of the 'friend- 
liest' computers ever built. . .it will be a handsome 
and useful addition to any home." I quite agree. D 




The power switch, single cartridge slot, and two con- 
troller ports now reside on the left side. ATARI responded 
to user comments that the joystick / paddle wires were 
always in the way on the computer's front. They also, 
apparently, feel that only two controller ports are neces- 
sary. 



FEATURES OF THE 1200XL 
OPERATING SYSTEM 

The operating system of the 1200XL has been 
altered as much as possible to give it additional 
features, but at the same time, increase its computing 
power. Compatibihty between this model and the 
400/800 was of prime concern to ATARI, thus tech- 
nical material on the two previous models applies to 
the 1200 as well. Here I will attempt to cover some of 
the additional functions of the 1200. 

As mentioned in the overview of the 1200XL, 
many new features are implemented, such as one- 
touch cursor control, the HELP key, DMA enable/ 
disable, and the additional European character set. 
All of the keys can be user defined with the exception 
of the BREAK, SHIFT, CONTROL, SYSTEM RE- 
SET, and CONTROL+ FUNCTION KEYS. In addi- 
tion, the HELR START, OPTION, and SELECT 
keys must be handled somewhat differently. 

Some important features on the 1200XL are the 
additional graphic modes that were previously un- 
available to the 400/800, except through machine 
language. What we at A.N.A.L.O.G call graphic 
modes 6Vi and TVi, plus the multi-color character 
sets, are now readily accessible, even through 
BASIC. Of course, to utilize the 4-color character 
set, you must still redefine the characters. 



Illffflllllllilllililill 




The i20oXL's rear panel contains the I/O ports 
previously found on the 400/800 right hand side: the 
standard ATARI serial port, TV connector jack, monitor 
jack, channel 2/3 selector, and power socket. The 
1200XL uses the same power transformer as the 400/800. 



One nice feature, not used up until now on micro 
computers, is a fine scrolling screen. When you type 
or list a program on the ATARI, and reach the end of 
a line, the screen will "coarse scroll" up. It is possible 
on the 1200 however, to smoothly fine scroll the 
screen; an impressive feature. 

A more serious feature is the added disk handling 
system. One setback on the 400/800 was the limited 
string length of 128 bytes. The 1200XL can read and 
write sectors on the disk from between 1 and 65536 
bytes. The default, as in the 400/800, is set at 128 
bytes, however under software control you can reset 
that value. The 1200 also has the capability to ignore 
the read-after-write verification on disk I/O opera- 
tions. 

We will cover the how-to-get-all-of-these-neat- 
things-to-work in a later issue, once there are 
1200XLs out on the market. As you may have no- 
ticed, the 1200 attempts to take the idea set forth by 
the 400 and 800 just one more step towards human 
engineering. D 




The 1200XL in all of its glory. This prototype (one of 
only 5 in the US!) lacks the white lettering that will 
appear just above the strip of metal keys, making their 
functions clearly marked to the user. 




ATARI 

A Warner Communications Company y^ 



1200XL Specifications: 

ROM: 16K 

RAM: 64K (empty) 

37K (w/BASIC + OP. System) 

GRAPHIC MODES: 



0... 


..40x24 


1 color, 2 lum) 


TEXT 


1... 


..20x24 ( 


5 colors) 


TEXT 


2... 


..20x12 ( 


5 colors) 


TEXT 


3... 


..40x24 ( 


4 colors) 


GRAPHICS 


4... 


..80x48 


2 colors) 


GRAPHICS 


5... 


..80x48 { 


4 colors) 


GRAPHICS 


6... 


.160x96 


2 colors) 


GRAPHICS 


7... 


.160x96 


4 colors) 


GRAPHICS 


8... 


.320x192 ( 


1 color, 2 lum) 


GRAPHICS 


9... 


..80x192 ( 


1 color, 16 lum) 


GRAPHICS 


10.. 


.80x192 


9 colors) 


GRAPHICS 


11.. 


.80x192 ( 


16 colors, 1 lum 


GRAPHICS 


12.. 


..40x24 


5 colors) 


TEXT 


13.. 


..40x12 


5 colors) 


TEXT 


14.. 


.160x192 


(1 color, 2 lum) 


GRAPHICS 


15.. 


.160x192 


4 colors) 


GRAPHICS 


I/O: 


Monitor 
Serial I/O 


utput 






Televisior 


75 ohm 






2 parallel (controller) ports 




1 cartridg 


e slot 




256 colors; 4 so 


und channels — 


3V2 octaves 


FEATURES: H 


ELP key 





DIMENSIONS: 



4 user programmable function 

keys 
1 touch cursor control 
user DMA enable/disable 
user keyboard enable/disable 
user definable console keys 

15"w x 12V2"d x 2%"h 
weight = 6V2 pounds 



Cabinet: brown & cream high impact plastic 
with brushed metal trim and transparent plas- 
tic accenting; Three LED indicators 




"■-'.J^^^S%^!!^ ^^-^^.-^ 



■'^::f'"^.i-'>:,j^oz,""'M; 



Se 



INCLUDES 2 JAM-PACKED' 
DISKS OF DATA BUT WILL WORK 
ON YOUR 1DRIVE MICROCOMPUTER 



ART COPYRIGHT 
19B1 RAYMOND BAYLESS 



APPLE 

AND 

TRS-80 

TEXT-ONLY VERSION 
534.95 



ATARI 

VERSION 

WITH FULL 

COLOR GRAPHICS 

539.95 




dventnr6 

INTERNATIONAL 

A DIVISION OF SCOTT ADAMS, INC. 




r=^ : ^1 


/^ 




WmSm 






iKmMi 


been it«tk 
oothoa. 


1 You may angogo him (T), c 


r leave r^J. 


1 '■ l| 



NOW AVAILABLE FROM YOUR LOCAL DEALER OR DISTRIBUTOR 

OR ORDER TOLL FREE (800) 327-7172 OR 

BY MAIL FROM ADVENTURE INTERNATIONAL • BOX 3435 • LONGWOOD, FL 32750 








AL0CKEDDO0R!Sf!IH!SWi!!W '■'"■"" '"■"' 

Aoi 12 Houn tDKhe the nuaa 



STiS\C«iSS 



'^^ 



^>, 




J 



REWRmNG 



nraiASMSTAS 



At the rate we're going, 
we'll have these pages 
filled by 2083. And by 
2084, people will be 
clamoring for the next 
Infocom creation. 

We hate to disappoint our 
public. So we keep you waiting. 
Because while the software facto- 
ries are cranking out arcade game 
after arcade game, pulpy adven- 
ture after trite fantasy, we're 
writing and rewriting, honing and 
perfecting. Before a single person 
enters one of Infocom's worlds, 
it must be crafted into a living, 
riveting, definitive experience. 



WECAN! 

Judging from the public's reac- 
tion, it's worth the wait. For 
instance. Creative Computing 
welcomed DEADLINE™ as 
"thoroughly engrossing and real- 
istic," while a Softalk readers' 
poll recently voted ZORK™ I and 
ZORK II the most popular adven- 
tures of 1981. 

And now, for the moment, your 
wait is over. ZORK III, your final 



step in the underground 
trilogy, and STARCROSS,™ 
an exploration of a new 
dimension in science fiction, 
are ready for you. 
Look at them up there, 
the little worlds of Infocom. As 
our universe expands, compan- 
ions will come to help fill that vast 
expanse of white space. Till 
then, they'll continue to stand 
alone as the best of all possible 
worlds. 

inpocoia 

55 Wheeler Street, Cambridge, MA 02138 



Infocom's worlds are available for Applef Atari? IBM, TRS-80f Commodore, NEC, Osborne, CP/Mf and DEC." 

Apple is a registered trademark of Apple Computer, Inc. Atari is a registered trademark of Atari, Inc. TRS-80 is a registered trademark of Tandy Corporation. 
CP/M is a registered trademark of Digital Research, Inc. DEC is a trademark of Digital Equipment Corporation. 



TAKE A CLOSER LOOK AT YOUR DISKS 
SEE WHAT'S REALLY THERE 
WITH 




DISKED 



(disk'°ed) 
by Mark Logies 

THE DISKED UTILITY PACKAGE contains numerous utility 
programs plus a comprehensive users' manual. With DISKED 
you can view and edit the contents of any sector in HEX, 
DECIMAL or CHARACTER (ATASCl! or SCREEN CODE). You can 
disassemble programs into 6502 mnemonics using virtual 
addressing. You can recover deleted files, save crashed 
diskettes, map used and crashed sectors, copy any sector or 
block of sectors, move cassette boots up to disk and vice 
versa, create immediate mode files and multi-boot disks, 
PLUS MUCH MORE! 

Each program is listable and user adaptable. 

Runs in 24K ONLY $89.95 

Call or write for more information on all of our software. 

GET MORE OUT OF YOUR INVESTMENT 
EXPAND YOUR ABILITIES WITH DISKED 




ic cam; >'i,vp cinck pr ipniv oroh; to- 

^ •- ENTERPRISES 

PO BOX 25612 
n^RFIElC 4Fir,HT< OH j4'2S 
(216) liTi-nsG 
OROtRM .'.IlLST r.VlUUt jil.jt iri.'friM^ AND KANBUNG. 





MAGIC MAIL* 



An exciting New DauBuicMdiling^ind Personal InrurmaiionSysIcm for your Atari 4(M)/80O** 
Pcnonal Compuier. Never before have all ihesc I'caiurei hecn Jesigned inio i single Mailing and 
Informalton System, so easy lo use and su powerful 

COMPARE THESE FEATURES: 



Daia Fields; Name. Address, tily. Slaic. ^ip Code, 

Area Code. Phone Number. Binhduy (m/d/y), 
and Enlry Type. 

Up lo llt^7 reeofds per Diskette! 

:r').'^%uryuur Dalu. and 2-4 seL'onJs over ihe 

Up lo 63 SEPARATi: and UNIQUE files pertnillcd per Diskclle 

Single or Double Disk Drive C'upahility. 

Buili in SORT, capable ofSoning ANY Dala f-ilehy ANY Field wiih up lo IIJ Sub- 

Helds. 

Commund-Uriven wiih simple Engli.ih-like Lommands: I IND. MODIFY. 

PRINT. ADD. SORT. ele. 

Posiiion Independcnl Sl Position Depcndenl Fields. 

Files compatible with Atari DOS II.'* 

Recorded on High-Qualiiy Verbatim Diskelles. 

Every Diskette Pretested for Bad Scetorv and recording integrity. 

Versions fen Epson MX-MO. Prowriicr. Centronics 

Print Single-width Mailing Labels or Directory Listing. 

100% Machine. Language. 

16 K Minimum Memory. 

hO-Pagc User Manual 

90 Day Buyer Protection Guarantee. 

Call or write for FREE additional 



MAGIC MAIL is a Trademark of A-BIT-BETTER Software 
ATARI is -A Registered Trademark of Atari Inc. 
Search time is for an Indcied File. 



aees 

A-Bil-Battef Sofl»wara *— 

Post Office Box 28 
Uurel Md 20707 



(301)953-7256 
Dealer Inquiries Invited. 




aV-"" 



Q: What is the hardest thing in the world? 
A: Tearing yourself away from an EPYX game. 




^^■i^^--^ 



Nobody but nobody builds more lasting 
playing value into their computer games 
than EPYX. 

EPYX — computer games thinkers play. 
EPYX — producers of award-winning games 
(including "Crush, Crumble and Chomp"; 
"Dragon's Eye"; "Temple of Apshai".. .and 
dozens of other thinking games.) For Atari* 
Apple,* Commodore,* Radio Shack,* and 
IBM* personal computers. EPYX — the 
leader in computer game quality, 
creativity, innovation. 

You will love them all. 
Write or phone for our latest catalog; it's 
absolutely free. . .we even pay the post- 
age. Or stop in at your favorite computer 
dealer. He should have a supply of catalogs 
and he can also show you some of those 
marvelous EPYX games in action. 

'The trademarks, respectively, of Atari, inc.; Apple Computer, Inc.; 
Commodore International; Tandy Corp.; International Business 
Machines. And EPYX is the trademark of Automated Simulations, inc., 
just so you don't forget. 



AUTOMATED SIMaLATIONS 

1043 Kiel Court 
Sunnyvale, California 
(408) 745-0700 




No 



On 



Ca 



Experience the 
MicroProse Challense!!! 



«se«e» 




CHOPPER RESCUE 

Zip up your flying suit and strap yourself into your sleek assault chopper: 
CHOPPER RESCUE ctiallenges your skill and daring. Pilot your nimble 
craft through the treacherous underground labyrinth. Search out and 
rescue the captives trapped inside. Danger approaches from all sides as 
defenders fire winged missiles and sparkling energy bursts at yourfragile 
craft. But you are not defenseless, your explosive tipped rapid-fire 
missiles dart out to blast a path through the dense minefields. Thread 
your bomb directly into the heartof their pulsating nuclear furnace. And 
just vi^hen you think the path is clear, a swift patrol drone appears from 
behind a ledge, spitting missies as you scramble for a firing position! 
CHOPPER RESCUE features three scenarios, multiple skill levels, and 
competition in solo or team configurations for 1 to 4 players. Immerse 
yourself in the non-stop excitement of CHOPPER RESCUE. You'll keep 
coming back for more! 
Requires ATARI® 32K, Disk or Cassette . . . $29.95 



HELLCAT ACE 



HELLCAT ACE is a superbly realistic re-creation of WWII Air-to-Air 
combat in the Pacific using a fully three-dimensional airspace. HELLCAT 
ACE puts you in the fighter cockpit with its unique pilot's eye view. To 
escape and destroy the tenacious enemy fighters, HELLCAT ACE allows 
you a full range of high-performance aerobatics; including loops, stalls, 
rolls, immellman turns, and spins. The fifteen well documented scenarios 
include combat air patrol, night action, and kamikazes — and, if things 
get out of hand, you can bail out or attempt a water landing in your 
damaged fighter! HELLCAT ACE includes multiple skill levels and options 
for up to four players. Can you avoid being shot down and win five 
victories to become a HELLCAT ACE? 
Requires ATARI® 40K, Disk or 32K Cassette . . . $29.95 

For aerial combat challengeandexcitement over Europe in WWII fly the 

SPITFIRE ACE! 

Requires ATARI® 40K Disk or 32K Cassette . . . $29.95 





FLOYD OF THE JUNGLE 

Looking for a fun game you can play with your family and friends? FLOYD 
OF THE JUNGLE is a great game up to four people can play simultane- 
ously! Can you be the first to guide Floyd through the jungle peri Is to save 
the lovely Janice? It isn't easy! Floyd must leap the poisonous snakes, 
climb the slippery vines, ride the elephants, and cross the raging rivers. 
FLOYD OF THE JUNGLE includes fully-animated wild animals, music, 
sound effects, and five different multi-color jungle adventures. 
Requires ATARI® 32K, Disk or Cassette . . . $29.95 



MicroProse Software is dedicated to bring you games that will challenge you far beyond the first few plays. We promise you hours of 
excitement and pleasure. Our games are created using "MicroProse", our own proprietary assembly language gaming system, and are 
available at select computer stores. 



PHONE: (301) 357-4739 



For Fast Delivery by C.O.D., 
MasterCard or Visa ... Or 
Send Check or Money Order . . . 
Please add $2.50 shipping/handling. 
Maryland residents add 5% tax. 

Dealer Inquiries Welcome! 



MicroProse Software 
One Caribou Court 
Parkton, Maryland 21120 

ATARI® is a registered trademark of Atari Inc. 



ATARI 400/800 UPGRADES 

FROM NEWELL INDUSTRIES 

GET THE MOST OUT YOUR COMPUTER 



FASTCHIP - ATARI 400/800 
FASTCHIP can' give yo 
the speed of the origina 
Atari BASIC uses these 
FASTCHIP is a pin compat 
original. It can be inst 
permanent replacement fo 
no modifications, cuts, 
comes with a 90 day full 
during this period for a 
Some reference times (in 
FUNC:OLD ROM: FASTCHIP 
ATN 128 62 
LOG 129 33 
A 236 65 
SIN 85 30 



$41.95 
u up to three 
1 floating po 
outines for a 
ible ROM that 
ailed in minu 
r the origina 
or wires to a 
warranty. Re 
full refund, 
seconds) (in 
FUNC: 
CLOG 
EXP 
COS 
SQR 



and 1/2 times 
int routines. 
Imost everything. 

replaces the 
tes , and is a 
1 rem. There are 
dd. FASTCHIP 
turn undamaged 

1000 loop) : 
OLD ROM: FASTCHIP 
120 30 
112 34 
84 33 
135 55 



RAMROD MHOS - ATARI 800 ONLY $159.95 (less memory) 

RAMROD is a new operating system board that 
replaces the existing board. It gives the user the 
flexibility of using either the existing operating 
system roms or it is switch selectable to use EPROMS. 
This allows the user to change the operating system to 
meet any needs that might arise. 

RAMROD also addresses the 4K of memory not 
currently accessible in the system. It also is switch 
selectable and may be used as RAM, ROM, or a 
combination. This ram is usable by software such as 
SPREADSHEETS, WORD PROCESSORS, and certain LANGUAGES 
to mention a few, without modification to the existing 
operating system. Complete with instructions and 
recommended modifications. 1 year warranty. 

PLUS, every board comes with SUPERMON ! , a resident 
machine language monitor written by David Young. It 
features many powerful debugging commands like 
display/ alter memory, disassembler, printer and disk 
interface, etc. The disk interface has many features, 
including the ability to access single or multiple 
sectors in sequential or linked mode, S/D or D/D. And 
you can call it up at any time. A sophisticated yet 
simple program to use. 

WITH 4K RAM $169.95 

WITH 12K MfeMORY (4K RAM, 8K EPROM) $189.95 

PRO BOWLING VERSION THREE - ATARI 400/BOO $24.95 

This game is written in Basic and machine 
language and is an accurate simulation of the sport of 
bowling. There are ten skill levels to give challenge 
to the best of computer game players. Features 
redesigned character set, automatic scoring, sound, 
and P.M. graphics. 
REQUIRED ACCESSORIES: 
DISK DRIVE 

BASIC LANGUAGE CARTRIDGE 32K MIN. MEM. 
ONE JOYSTICK CONTROLLER PER PLAYER 

ATARI SOFTWARE( LIMITED SUPPLY) 

ENTERTAINER/CX481 $59 

MISSILE COMMAND/CXL4012 $24 

STARRAIDERS/CXL4011 $27 

CONV FRENCH/CX4119 $33 

STOCK ANALYSIS/CX8107 $14 

STOCK CHARTING/CX8108 $17 

BOND ANALYSIS/CX8106 $14 

MORT (, LOAN ANALYSIS/CX4115 $11 

MAIL LIST/CX4104 $13 

ENERGY CZAR/CX4121 $11 

EDUCATION CARTRIDGE/CXL4001 $15 
BUSINESS C0MMUNICATI0NS/CX6010 $17 

SUPERVISORY SKILLS/CX6003 $17 

MUSIC C0MP0SER/CXL4007 $30 

VIDEO EASEL/CXL4005 $20 

COMPUTER CHESS/CXL4009 $26 

BASKETBALL/CXL4004 $20 
EDUWARE COMPUMATH DECIMALS/CASS $16 

EDUWARE COMPUMATH FRAC./CASS $16 

JAWBREAKER/DISK $18 

To order:Call 214-423-1781 or send check or money 
order to NEWELL INDUSTRIES, 3340 Nottingham In., Piano 
TX. 75074. Texas residents add 5% sales tax. Orders 
outside the U.S. add 3% for shipping. C.O.D. orders 
add $1.50. Sorry, no charge cards. Call or write for 
additional information. Dealer inquiries welcome. 
All NEWELL products also distributed by JERSEY SYSTEMS 
800-526-3647. In NJ. 201-821-9441. 

ATARI 400/800 are Trademarks of ATARI INC. 



PROTECT 

YOUR COMPUTER 




special ^Ob99 

COMPUTER COVER 

Features heavy duty canvas with vinyl interior-waterproof. 

ATARI-800/AC-8 '8.99 EPSON/ MX-80 =8.99 

ATARI-400/AC-4 =8.99 EPSON/ MX-80FT =8.99 

ATARI-8W/AD-D =8.99 IBIVt PC PRINTER =8.99 

0KIDATA/IJ82A =8.99 



Mail Order 

■ii 

SOFTWARE GALLERY 

P.O. Box 3354 

Cherry Hill, N.J. 08034 

Call: (609) 424-7106 

Add S2 for postage and handling. 
N.J, residents add 5% sales tax. 



Dealer & Distributor 
^TRAV-LER^^ 

INC. 

359 Wales Ave. 

New York, N.Y. 10454 

Call: (212) 993-7100 



NOTE: Atari, Epson, IBM and Okidata are registered trademarks. 



Uo 



COMPUTER STORE 



^ 



SOFTWARE GALLERY 

P.O. BOX 3354, CHERRY HILL, N.J. 08034 

(609) 424-7106 



ATARI 800 aOK $ CALL $ 

ATARI 810 DISK DRIVE $ CALL $ 



Defender 
Pac-Man 
Galaxian 
Centipede 

$3a-95ea 

32K Ram Board ^72.95 

48K Ram Board M24.95 

INTEC RAM BOARD FOR ATARI 400/800 

PHONE ORDERS CALL (609) 424-7106 FOR 
IMMEDIATE COD, SHIPMENT 





^■■■i CHARGE IT WITH YOUR VISA 
VISA' OR MASTER CARD l«* 

■;| Add 3% for Master Card and Visa l^v^_3^_^j 



''^*«^?A. 



THANK YOU FOR YOUR ORDER! 



DISK 

AND 

TAPE 
$29.^=* 




"THRAX LAIR" A FAST ACTION GAME WITH EXCEPTIONAL ANIMATION, 
VARIETY, AND RESPONSE™ FLY THROUGH TWISTING CAVES...DODGE ENERGY 
TORPEDOES^DESTROY THE EVIL THRAXi; 

ATTENTION PROGRAMMERS: ASK ABOUT OUR ftO / 40 
AND OUR NEW DISK UTILITY. >^X^ / — T V^ 



TO ORDER,CALL OR WRITE: 

[303) 949-6646 

BOX 5480 AVON,CO 81620 



SPLIT 



ATARI is a trademark of ATARI, INC. 



Software 



PAGE 44 



A.N.A.L.O.G. COMPUTING 



^SSUE 10 



©AMe 



16K cassette 24K disk 



by Michael Duboy 



^ H n Adventure is designed for joystick 

^^m^^ input only. Move the joystick right 
^^■■T^B for a yes answer or left for a no an- 
V ■ swer. Use north (top of joystick) and 

/ Ml . south directions to increase or de- 

/crease the amount of food and water being pur- 
chased by you. At other times these joystick posi- 
tions will input the direction of travel. When you 
have the desired amount of food and water, press the 
fire button to acknowledge purchase. 

The hero in the game starts out with only enough 
food and water to last one day. Three moves are a 
day's journey in game time. Abdul the loan shark is 
always ready to loan a hero enough gold to provision 
a short journey. He can be found at the "c" in "city." 

There is a limit of 100 weight units that can be 
carried by the hero. This should be taken into ac- 
count when buying food and water. These provisions 
can be obtained at the "i." Water is cheap, but food 
is not. You buy these in amounts used in one day's 
travel. 

The journey to the lost city is long and perilous; 
having a psychic companion along is always an ad- 
vantage. A companion doubles the amount of weight 
that can be carried. You can only have one compan- 
ion at a time, but if he dies you can always hire 




another companion. Remember though, that debts 
must be paid. Companions can be found at the "t;" 
but be prepared to pay their price or go alone. The 
more a companion's asking price, the stronger he'll 
be. Don't forget food and water for your companion! 

Beware of the sea, as you're likely to drown. The 
forest is swarming with bandits. The trail is longer 
but safer than the forest, and — of course — there is 
also a storm that can flood the trail. 

When you arrive at the lost city you will notice 
strange symbols on the ground. You must guess the 
number these symbols represent. Here a psychic 
companion will prove invaluable. His hints will re- 
duce the number of guesses necessary to open the 
stones. (Hint: Don't guess a number over 26.) Evil 
spirits roam the ancient city. The longer you stay in 
one place, the likelier it will be that they will appear 
to steal food and water from you. When you tire of 
adventuring, you can end the game and obtain a 
rating by occupying the "y" in "city." You'll find 
leaving the lost city a lot harder than entering it. 

The following variable descriptions should give 
the reader the opportunity for modifying the game. 
For example, islands and a sea adventure can be 
added to the game; also a trading post or another 
city. □ 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 45 



DOCUMENTATION 
Variable(s) Purpose 

A C D O Represents constants in order to save 

memory 
ITY Turns off(l)/ on(0) loan subroutine 

A$ B$ C$ Used to randomize alphabet; C$ also 

holds output strings 
HP Strength of Hero 

GD Amount of gold carried by hero 

F Food units 

W Water units 

WT Weight units 

WT$ Used to round off weight units 

GX GY H X y coordinates and shape of pixel 

moving to 
X Y HI X y coordinates and shape of pixel 

S Direction of joystick moved 

RD Probability factor of an event 

B Number of adversaries 

DEC Number of adversaries killed 

NAME$ Contains various phases 
E Used in interpreting joystick moves 

HPB Damage done by Adversaries 

HPC Strength of companion 

U 12 13 Temporary variables 

IT Amount of loan repayment 

I Temporary indicator of who is being hit 

T Increases or decreases amount of gold 

found 
GUESS As GUESS increases in value the prob- 

ability of Evil Spirits increases 
ITC Amount of gold in debt to companion 

for 



3 ft=l:C=fl:O=0:O=*:ITV=O:GRdPHIC5 fl:G05 
UB 1240: GOTO 1278 

4 ? CHRStl25J iRETURM :REM Clear screpp 

5 GK=GK+0:GV=GV+ft:RETURII :REM MoveHent 
5, R. lines 5-14 

6 GK=GK+0:GV=GV-«:RETURH 

7 GK=GX+fl: RETURN 

9 GK=G)<-fl:GV=GV+0:RETUBM 

10 GK=GH-0:GV=GV-0:RETURH 

11 GX=GX-fl: RETURN 

13 GV=GV+ft:RETURW 

14 GY=6Y-ft! RETURN 

15 RETURN 

30 FOR Tl=6 TO lOOOsNEKT I1:RETURN :RE 

M l>ELflV 

40 RD=INT CieO«RND CO) +A) : RETURN 

58 FOR I2=ft TO 11:READ I1:S0UND 0,11,1 

0,6: FOR IZ-a TO 25:MEKT 13: NEXT 12: RES 

TORE iRETURN :REM Play tune 

99 IF ITVrO THEN RETURN :REM Loan S. R 



100 GOSUB D:? 
ieces." 

101 ? " Greetings 



Vou have ";GD;" gold p 



I'M Abdul. Need a lo 
an?":G05UB 160:IF E=ll THEN G05UB 258: 
GOSUB 30; RETURN 

182 GOSUB 48:? "I Offer you "jCRD+SOJ; 
" gold pieces. ":IT=2«iRI>+50) :? "RepayM 
ent will be ■■jIT:G05UB 38 

103 ? " Accept?" :GOSUB 160:IF E=7 T 
HEN GDz6D+RD+58:ITV=A:605UB 258 

104 RETURN 

185 GOSUB &:' "Food for how Many": NAME 
$-'• days?";G05UB 30:E=O:GOSUB 288:GI>=G 
0-E«2 



186 IF GD<0 THEN 6D=GD*E»2 : GOSUB D:' " 
NOT ENOUGH GOLD ! "; CHR$ tl57J : GO 
SUB 38:G0T0 105 

108 F=F+E«6: GOSUB 258: IF GD<1 THEN RET 
URN 

189 GOSUB 30: GOSUB D:? " Hater for how 
Many": GOSUB 38 :E=0: GOSUB 200:6&r6D-l: 

M=M+E«3: GOSUB 258: RETURN 

116 IF C=2 THEN RETURN ;REW Hire coMpa 
nion 

117 GOSUB D:? " Need a coMpanion?":GOS 
UB 168:IF E=ll THEN GOSUB 258:RETURN 

118 GOSUB 0:? " Your coHpanion wants " 
,-:GOSUB 48:ITC-RD»t258-HPJ :? ITC:" in 
gold " 

119 ? " to be payed to hiM or his heir 
after the adventure. Accept?":G05UB 1 

69: IF Erll THEN RETURN 

128 C=2:HPC=INTC8.01»ITC+8.5*HPI : GOSUB 
258:RETURN 

121 IF GD<2e8 THEN RETURN :REM RATING 

122 GD=GD-(ITC+IT3 ; GRAPHICS 2:P0SITI0N 
8,4:? tt6:"V0Ufl RATING IS:" 

123 IF GD>2888 THEN CSr" AUENTOR" 

124 IF G0M8888 THEN CS=" G8RDENT" 

125 IF GD>28e8e THEN CS=" SUERGBRD" 

126 IF GD<2881 THEN C5=" HINDMOST" 

127 IF GD<0 THEN GOSUB D:? tt6;" YOU'UF 
BEEN PUT IN DEBTORS PRISON!" 

128 GOSUB 30:? tt6;CS:? "WANT TO PLAV A 
GAIN?": GOSUB 168: IF E=7 THEN POP :RUN 

129 END 

158 RO = INT (ie8«RND <0J +A) : RETURN 
168 E=e:IF 5TICK(0)=7 THEN E=7:RETURN 
:REM lines 168-18e;yes/no routine 
170 IF STICK C0J=11 THEN E=11:RETURN 
180 GOTO 168: REM YES NO ROUTINE 

190 REM Counting S. R. 

288 E=E+l:IF STICK<0)=13 THEN E=E-2:IF 

E<0 THEN E=0 
210 GOSUB D:? NAME$;E:IF STICKC0J=13 
R STICK(0)=14 THEN 200 
220 IF STRIG(0)=A THEN 218 
230 RETURN 

240 S=STICKC8) : GOSUB S:RETURN 
250 POKE 77,O:MT=F/6+GD/ie80+W/2:HTS=5 
TRStWTJ :MT=UALfHTS) :IF MT>108«C THEN G 
OTO 598 

268 IF M<0 THEN C5-"0 
B":GOTO 338 
270 IF F<0 THEN C$=" Starved to death! 
":GOTO 330 

280 IF HP<A THEN C5=" DIED FROM MOUND 
S":GOTO 330 

298 IF HPC<A AND C=2 THEN GOSUB D:? " 
COMpaion is dead,":GOSUB 38:C=A:GD=GD- 

ITC:ITC=8 

388 GOSUB D:? CHR:$tl57> : " firailil " : " ";"HP 
=";HPj" "j"GD=";GD;" ";"MT=";MT;" ";"F 

310 IF C=2 THEN ? " MiKIJ-rMiT!] " :" HP="j 

HPC 

320 RETURN 

330 GRAPHICS 1+16 : POSITION 0,18: POKE 7 

12,232:P0KE 708,32:POKE 789,196:? tt6jC 

S:G0SUB 30: goto 128 

590 GOSUB D:? CHRSC157);MTj" Is too MU 

ch weight!" 

680 ? " Throw away how Much go^d?":NA^ 

ES="GOLD::": GOSUB 30:E=O:GOSUB 228:IF G 

D>=E THEN 6D=GD-E 

618 GOSUB D:? " How Much fOOd?":NAMESr 

"F00D=":GOSUB 38:E=0:G0SUB 228:F=F-E 

620 GOSUB D:? " How Much water?" : NAMES 

="MATER=":E=0: GOSUB 38: GOSUB 228:W=W-f 

:NA^«S="":GOTO 259 

638 HEM DEC BANDITS 

640 DEC::IHTCI1»RNDC03J :IF DEOB THEN I 

EC=B 

668 B-B-DEC:? " There are ";B;CS;" ";l 

AMES;" killed "JDECJCS:HETURH 

678 GOSUB D:? " There are ";B;CS:RETUI 

N 

698 GOSUB 48:RD=RD+Y:REM Drowning 

718 IF H=16e AND C=2 THEN IF RD>48 TH 

N GOSUB 0:? " CoMpanion has drown. ":C 

A: GOSUB 38:GeSUB 258:RETUhN 



DIED: LACK OF WATE 



PAGE 46 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



720 IF H=16e THEM IF R0>60 THEM CS=" 

Vou'we drown «":GOTO 3J8 
738 IF H=160 THEM RETURN 
740 IF H=0 AMD RD>93 THEN B=fl 
750 IF H=32 AMD RD>80 THEM B=A 
760 IF MOT CB=AJ THEN RETURN 
770 REM BANDITS 
780 B=IMTCHD/10>+V»CH<>0) :G0SUB D:C$=" 

bandits. "zGOSUB 678 
790 DEC=0:I=C;G05UB 30:? "Want to run? 
■':GDSUB 168:IF E=7 THEN RETURN 
800 NAMES="VOU ■ we" : HPBrlMT tB«RMD COJ +1) 
:IF B>0 THEN ON I GOTO 840,850 
820 RD=IMT ( CK+11 / CV+1)#CT)«RDA2* tRD»H» 
V)/ieJ:? "Vou'ue found ■';RD;" in gold 
on the ■■;cS 

830 GD=GD+RD:G05UB 50: RETURN 
840 HP=HP-HPB:G05UB 258:G05UB 30:I1=HP 
:G05UB 630:G0SUB 30:I=C:GOTO 800 
850 MAMES="Vour coMpanion has ■■:HPC=HP 
C-HPB:G0SUB 250:G0SUB 30 
860 IF C=2 then I1=HPC:G05UB 63e:G0SUB 

30 
870 l=l:G0T0 800 
880 REM TREASURE SO. 

890 G0SU6 D:? " Treasure square"" :GUE5 
S-0:NAMES="Guess is " 
900 ? "Do you wish to go to another sq 
uare?":G0SUB 160:1F E=7 THEN RETURN 
910 GOSUB 40;IF RD>84-GUE5S THEM GOSUB 

D:? "Evil spirts!":G0SUB 3O:W=INT(W-0 
. 1»M3 : F=INT CF-0 . 1»F J : GOSUB 258 
920 GOSUB 30:G0SUB D:? " What is your 
quess?": GOSUB 200:I1-E+64:GUE5S=GUE55+ 
l:IF CHRStIl)=ASfH,HJ THEM 970 
930 IF C=l THEN 900 

940 IF CHRS(IlJ>ASfH,HJ THEM ? "COMpan 
ion says go lower." 
950 IF CHRSCIl}<A5:tH,H) THEN ? "COMpan 

ion says go higher." 

960 GOTO 900 

970 GOSUB D:? " The stone has opened!" 

:H=0:T=l:G05UB 58 

990 Il=INTC3»RNDtO>+A) :0N II GOTO 1000 

,1018,1028 

1000 CS-" Goblins ":G0T0 1030 

1018 C$-" Ores": GOTO 1030 

1020 CS=" Ghouls" 

1038 GOSUB 40:B=RD:G0SUB 670:GOSUB 790 

: T=0 : RETURN 

ieio'souND o,o,o,o:if gh<o then gx=o:s 

OUMD 0,250,12,4 

1070 IF GY<0 them GY=0:S0UMD 0,200,12, 

4 

1080 IF GK>19 then GX=19:S0UMD 0,180,1 

1090 IF GY>19 them GY=19:S0UND 0,140,1 

2,4 

1100 REM «* Stores Pixel ** 

1118 LOCATE GK,GY,H:IF H=130 OR H::150 

OR H=142 OR H=141 THEN H=H1 :GK=H : GV=V : 

SOUND 0,100,4,6:HP=HP-fl:G05UB 258 

1120 REM the IF THEN in 1110 Changes n 

ew values obtained by LOCATE back to o 

riginal if nove is illegal 

1130 IF XOGK OR YOGY THEN F=F-2»C:Mr 

W-C:GOSUB 250:REM Decreases food and w 

ater on Move 

1140 Hl-H:X=GX:Y=GV:REM keeps old galu 

e of location and pixel until legal mo 

ve is Made 

1150 IF GD>5000 THEN PLOT 3,8:P0SITI0H 

3,12:XI0 18,tt6,0,0,"5:":G05UB 1248 
1160 SOUND 0,0,0,0:COLOR 251:PL0T GX,G 
V 

1170 IF H1>=1 AND Hl<=25 THEN GOSUB 88 
8 

1180 IF H=0 OR Hi:32 OR H=160 THEN GOSU 
B 690 

1190 IF H=99 OR H=105 OR H=116 OR H=:12 
1 THEN GOSUB H 

1200 IF STICK tO) =15 THEM 1200 
1218 SOUND 0,MT,12,6:G0SUB 248:C0L0R H 
:PLOT X,Y:G0T0 1050 

1240 GRAPHICS 33:P0KE 708,180:POKE 712 
,224:P0KE 710,132:POKE 756,226:P0KE 75 
2,1:RETURN :REH CHANGES COLORS 



1270 REM «« DRAW GRID AREA «« 
1288 POSITION 1,1:? tt6;" city":POSITIO 
N 10,10:I=A „ ,„ 

1300 FOR V=ie TO 19 STEP 2:F0R X=ie TO 

19 STEP 2:C0L0R I:SOUND 0,1,10,4 iPLOT 

X,Y:I=I+l:HEXT X:HEXT Y 
1310 COLOR 150:PLOT 0,0:DRAMTO 0,3:C0L 
OR 141:PL0T 0,4:DRAWT0 7,4:C0L0R 130:P 
LOT 7,O:DRAMT0 7,3 

1320 COLOR 142:PL0T 9,8:DRAMT0 19,8:C0 
LOR 13e:PL0T 8,19:DRAMT0 8,9 
1330 COLOR 0:PLOT 8,8:P0SITI0N 8,0:P0K 
E 765,160:XIO 18,tt6,0,0,"S:" 
1350 PLOT 8,19:DRAHT0 0,8:DRAWT0 7,8:P 
LOT 0,7:PL0T 0,6:PL0T 0,4:PL0T 7,0:P0S 
ITION 12,4:? «6;"aia" 

1378 REM ** RANDOM ALPHABET «*» 

* 

1380 DIM AS(25J,B:5t25J,CSC25>,WTS(4),N 
ANE$(28) 

1390 AS="ABCDEFGHIJKLMNOPQRSTUUWXY" 
1408 FOR X=l TO ie:I=IMTtl5»RMDfOJ+53 : 
BS=AS tl , I-IJ : AS=AS CIJ : AS CLEM CASJ +1> -B$ 
;CS=AStll,20) 

1410 CStLEM(CSJ+lJ=A5ll,10) :CS<LENCCSJ 
+lJ=ASt21,25J :AS=CS:NEXT K 
1420 HP=INTC100«RND(0>*100) :GD=3:F=6:W 
=3 

1430 GOSUB 250:GX=l:6Y=0:H=32:REM init 
ial position of Hero 
1440 GOTO 1140 

1450 DATA 53,64,85,81,102,108,96,81,64 
,53,0 



(see DtCHECK 2, p. 26) 

3 DATA 438,587,508,738,420,746,728,796 

,806,811,767,88,265,251,638,8579 

100 DATA 600,8,640,34,585,633,67,495,8 

87,505,486,181,711,387,107,6246 

122 DATA 513,201,396,262,468,966,553,4 

1,210,417,890,383,565,609,689,7163 

220 DATA 361,592,344,509,108,920,433,6 

31,671,326,591,549,365,42,975,7417 

620 DATA 764,852,451,24,765,187,140,18 

0,583,709,927,979,241,574,452,7828 

800 DATA 929,638,970,333,130,180,342,7 

52,878,391,522,471,545,410,761,8252 

960 DATA 733,253,540,910,530,389,481,7 

35,942,954,946,284,518,654,374,9243 

1140 DATA 802,83,138,837,401,551,368,3 

82,268,530,685,945,278,481,289,7038 

1350 DATA 575,448,303,953,772,394,118, 

476,721,871,5631 





We have over 

1000 Educational Programs 

for use on your 

Atari 400/800 Computers! 



You and your family will enjoy 
learning in your home when you 

Stop 

Playing with 
Your Atari 



All along you've heard there isn't much of a 
selection of low cost microcomputer course- 
ware. Well, do you want to learn Physics, 
Psychology, or Philosophy? Accounting or 
Auto Mechanics? Sociology, Supervision or 
Statistics? Economics or Electronics? How 
about English as a Second Language? Would 
you like to teach your children fvlath or Read- 
ing? If you do, then we have the educational 
programs for you— and at affordable prices. 

It's true there aren't many companies that of- 
fer full-length courses in subjects other than 
reading and arithmetic, and what is offered 
seems to be drills, tests, games, or simula- 
tions. What you really want is a course that 
covers the subject with, say, 16 full-length 
lessons called tutorial programs, where you in- 
teract with an expert programmer backed by a 
staff of experts. That's exactly what we have. 

ASK THESE QUESTIONS 

Why haven't you heard of us before? We're a 
public company that's been trading over the 
counter for 1 6 years. We've been developing 
interactive learning systems since 1 957. We 
sell hardware and software for interactive film, 
slide, video and computer learning to the 
educational field, vo-techs, industries, military, 
and several state and federal agencies. Our 
programs are used in all 50 states and even in 
some foreign countries! In 1 975, we started to 
convert to the Talk & Teach Computer-Assisted 
Instruction (CAI) System, licensed Atari to use 
it in 1977, and in 1981 licensed Radio Shack 
to use our Talk/Tutor System. So, why haven't 
you heard of us? Frankly, we've kept a low pro- 
file. Until now. 

Is there something wrong with our software? 
Well, we don't ask you to enter your name so 
we can drop it into some later text. We don't 
ask you to type in your answer and refuse to 
accept it if it's not spelled just right. And, we 
don't branch around a lot when you make an 
error. Our programs simply let you know If 
you're wrong by proceeding only when you 
select the right multiple-choice answer. 

This proven learning-by-positive-reinforce- 
ment method lets you proceed quickly and 
smoothly through the programs, without a lot of 
cute tricks. But, if you're a devoted com- 
puterist or game freak you may be disap- 
pointed at the lack of motion in most of the pic- 
tures, or our special visual effects. We have 
some dandies, like the mushroom cloud that 
rises over Hiroshima in our History series, but 
your learning is not distracted by needless 
special effects. 

OVER 1000 PROGRAMS 

We have 64 courses of 1 6 half-hour pro- 
grams: 1024 programs! All are easy-reading. 



upper-and-lower-case. All are in Atari color. All 
are illustrated by frequent graphics, composed 
of special and regular characters. And, best of 
all, every frame of every program is accom- 
panied by high-quality, full-time audio narration 
by professional voice talent. David Stanton, 
James Mathers, Pam Barrymore. Recorded 
and played back, not synthesized or digitized! 

— If your child is having trouble with Reading or 
Math, or if he or she is exceptional, and 
could benefit from professionally program- 
med lessons or courses, then you need our 
educational programs for your Atari 400 or 
800 to help your child. 

— If you want to build your math skills, we have 
programs on Numbers and their meanings. 
Addition, Subtraction, Multiplication, Divi- 
sion, Fractions, Decimals, Percents, Angles, 
Graphs, Word Problems, Algebra, Statistics. 
There are ten series in all, 160 math pro- 
grams. Again, all with color, pictures, and a 
friendly tutor's voice— all the time. 

— If your verbal skills need polishing, try our 
Talk & Teach programs on the alphabet, 
spelling skills, and every level of vocabulary; 
Sight Words or Learn by Phonics; develop 
Reading Comprehension skills from stories 
and articles. There's even a series on the 
Great Classics. 

— For self-development, try a 16-program 
course in Economics or Psychology. Or 
Supervision, Sociology, Counseling (Per- 
sonal, School, or Employee), Writing, 
Business, Philosophy, Government, World 
History, U.S. History, or Accounting. 

— For vocational skills, study our 1 6-program 
courses in Electronics, Fluid Power, Auto 
Mechanics, Shop, Carpentry, Construction, 
Meat Processing, Military Skills (64 pro- 
grams), and there are many more. 

YOU HAVE WHAT IT TAKES 

You'll need your Atari 400 or 800, and the 
Atari Cassette recorder. And to present the 
Talk & Teach programs you need the Educa- 
tional System Master cartridge: it's $25 from 
us, if you don't have one. 

We say these courses, which are recorded 
one program per side of C20 to C30 (half 
hour) cassettes, are the equivalent of a 
chapter, or perhaps an hours lecture. We've 
been told that by studying our Economics or 
Psychology course, a student could pass a 
secondary or college test for credit. Many who 
have such credits never learned all that's in 
these courses. And while some of our courses 
have 1980 copyrights, most are 1981 and 
1982. In U.S. History, for example, you'll learn 
about America's foreign policy during the 



Falklands crisis as well as that in the Mideast in 
1982. And we're putting this information at 
your fingertips. 

Not sure whether you agree more with Ra- 
tionalists or Existentialists? Do you commit 
logical fallacies? Try our Philosophy course. If 
you're not sure about neurosis or psychosis, 
classical or instrumental conditioning, then you 
need our Psychology course. Just how in- 
dependent is the Federal Reserve? Get Eco- 
nomics, Program 12. Confused about the 
changes in traditional roles of political parties? 
It's Government 5. And let our tutor tell you pa- 
tiently and clearly about measures of disper- 
sion and central tendency. Our Statistics goes 
through F tests. We even have 16 full-length 
audio-computer programs with Spanish words 
and phrases. 

Remember, these are all for your Atari! Yes, 
we've done programs for TRS80 Model I, III, 
Color, tor the Apple and T. I. But that's another 
story. 

Would you like to do something more than 
play games on your Atari? Tired of squeaks and 
robotics and want to hear a human voice? Do 
you want to further your education or help your 
children along in theirs? Now you can. For just 
$9.90, we'll send you one cassette with 2 pro- 
grams from the course of your choice, 100% 
guaranteed to work in your Atari, and you can 
try us out. Better yet, get one full course of 1 6 
programs on 8 cassettes for only $59.90. For 
full documentation, 32 pre-post tests, fancy 
binder, 8 cassettes with 1 6 programs of the 
course you want, send $79.00. That's less 
than books and tuition for most college classes. 
And we offer a 1 day, 1 00% exchange allow- 
ance. Does your alma mater? Send us your 
check, or call us at (405) 288-2301 with your 
Visa/Master Card number. We'll send your 
educational software pre-paid. Please allow 1 5 
days delivery. Or see your Atari dealer. He 
may have some of our courses in stock. 
You've got nothing to lose but your games! 




DORSETT 

Educational Systems, Inc. 



P.O. Box 1 226, Norman, OK 73070 
(405) 288-2301 i^ 



Atari IS a trademarv ol Atvi. Inc Alan 400 and Atvi 800 we 
trademarks ol Atari. Ir>c All retererKes shoukl M so noted 



Four smart ¥iays 

to make your Atari 400/800, 

TRS-80 COLOR,VIC-20 and Commodore 64 

much more inteHigent. 




The Color Accountant pays 
for JtseH. This complete per- 
sonal financial package is 
designed to make your money 
easier to manage. Included are: 

/. Checkbook Maintenance 

2. Chart of Accounts 

3. Check Searcti 

4. Income/ Expense Statement 

5. Net Worth Statement 

6. Color Graph Design Package 

7. Home Budget Analysis 

8. Color Payments Calendar 

9. Mailing List 

10. Decision Maker 

This unique menu-driven pack- 
age requires less than one hour 
data input per month. The Color 
Accountant has over 60 pages 
of documentation including 
examples and step-by-step 
instructions. TRS-80 COLOR 
requires Ext. Basic and 16K for 
cassette, 32K for diskette; Atari 
400/800 requires 24K for cas- 
sette, 32K for diskette; VIC-20 
requires 16K Expander. Now 
available for Commodore 64, 

S74J5 cassette; 
$79^ diskette 



The Tax Handler makes 
April 15th just another day. 

This is the perfect complement 
to our Color Accountant. The Tax 
Handler will help prepare your 
tax returns and probably save 
you money. Included are: 

1. Form 1040 (Long Form)— filing 
status, exemptions, income, 
income adjustments, com- 
putation of tax, tax credits 
and payments or balance/ 
refund due. 

2. Schedule A (Itemized Deduc- 
tions)— medical and dental 
deductions, taxes, interest 
expenses, contributions, 
casualty/theft losses, miscel- 
laneous deductions and 
summary. 

3. Schedule G (Income Averag- 
ing)— base period income and 
adjustments, computation of 
averageable income and 
computation of tax. 

Additional schedules or altera- 
tions to the tax codes will be 
available separately in our 
monthly magnetic magazines. 
Atari 400/800 requires 24K for 
cassette, 32K for diskette. VIC-20 
requires 16K Expander. Now 
available for Commodore 64. 

S34.95 cassette; 
S39.95 diskette 



You'll love your computer 
with The Magnetic Maga- 
zine. Our magnetic magazines 
will entertain, inform, educate, 
challenge and delight you. Each 
issue contains 4 to 7 ready-to- 
use quality programs, all fully 
listable. Every issue includes a 
newsletter containing instruc- 
tions, tips on programming 
techniques and a line-by-line 
examination of the feature 
program. And starting with issue 
number 8, the first in a series of 
tutorials on machine language 
programming, Database I with a 
new application every following 
issue and a new utility in our 
Utility-of-The-Month section. And 
word processing is coming soon! 

A full year's subscription 
consists of 10 issues— over 50 
programs a year at a mere 
fraction of their cost. Available 
for TRS-80 COLOR Ext, Basic, 
Atari 400/800; all require 16K. 
Back issues available. 

One year subscription: 

$50.00 cassette; 

$75.00 diskette 

Half year subscription: 

$30.00 cassette; 

$45.00 diskette 

Sample issue: 

$10.00 cassette; 

$15.00 diskette 

VIK VIDEO issue 1 available 

for VIC-20; $12.95 cassette 



The Learning Center 
teaches and enlightens 
children. Our exceptional 
educational programs are class- 
room designed and tested. These 
unique packages have been 
invented to introduce 3 to 9 year 
olds to the ease of computer 
learning. Through the use of 
basic concepts such as colors, 
shapes, numbers and letters, 
children understand counting, 
math and language skills. Each 
program is designed to develop 
a specific skill, rewarding each 
correct answer with music and a 
happy face. Most are compatible 
with our new Edumate Light 
Pen $34,95. 

Available for Atari 400/800, 
\/IC-20 and Commodore 64; all 
require 8K for cassette, 16K for 
diskette. Also available for 
Timex/Sinclair 1000 and TI-99. 

Please ask about programs 
available and their prices 
for Pre-School, Kindergar- 
ten and Grades 1 & Z 
Prices range from $8.95 
for a single cassette to 
$79.95 for a complete set 
on diskette. 



Order now! See your local dealer or order direct. New catalog $2.00. Visa and MasterCard accepted- 

please add $2.00 for postage and hiandling. 
Call toll free! 

1-800-334-SQFT 

DEAUSR INQUIRIES INVITED 



prograimnier'smnigl^te 

*• ^^ a division of PUTUBB HOUSE — dent. aJ 



a division of PUTUBB HOUSE — dept. al 
P.O. box 3470, cliapel hill, north Carolina 27514, 919-967-0861 




ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 49 




Computer bulletin boards are systems that are 
accessed over the telephone network and offer file 
space for messages, questions, answers, want ads, 
phone numbers for other bulletin boards, and public 
domain software. They are provided by hobbyists, 
user groups, or dealers, and once your ATARI is 
equipped with a modem and terminal software, the 
cost of using a bulletin board service can be limited 
to telephone charges. Some boards do limit general 
use to portions of their files by requiring passwords. 
For example, a user's group might give the password 
for their best programs only to paying club 
members. The major services, Dow Jones, 
CompuServe, and the Source, are the largest bulletin 
boards, and these services bill for usage. 

This article presents information about smaller 
bulletin board systems, particularly those catering to 
ATARI users, and details on how to get a novice 
started with the ATARI Communicator package or 
equivalent pieces. First, a bit of background on the 
capabilities of the ATARI and the functions of the 
pieces in the Communicator kit is in order. 

The ATARI offers significant advantages over 
other home computers in its own (and higher) price 
classes when called upon to double as a remote 
terminal. When shopping for a home computer, my 
list of requirements included two very specific items 
only the ATARI could deliver! 

1 ) Full ASCII character set from the keyboard. 

and: 

2) Minimum of 40 characters per line on a TV 
display. 

I intended to use the micro-computer at home to 
access a mini at the office, and the full ASCII 
character set (particularly lower case) was necessary 
for work-related purposes. While you will not find 
all of the 128 ASCII codes pictured on the keyboard, 
they are there when the TELELINK I cartridge is 
installed. Table 1 gives the keystroke sequences that, 
when used with the TELELINK cartridge, will 
produce the non-obvious ASCII codes. 



TABLE 1 



ASCII 
CHAR. CODE* 


mM 


KEY-SEQU0<CE 


{ 
} 

DEL 


e NUL COKTROL-SRACE 
W Gpawe Accent CCNTROL-f (sraicolon) 
123 Opening Brace CONTROL-, (couna) 
125 Closing Brace C0KTROL-. (period) 
12^ Tilde CONTROL-* (plus) 
127Rubout (line) SHIFT-DELETE 
mm SHIFT-BKtAK 



My ATARI Communicator kit was ordered the 
same day as the computer, and within an hour after 
opening the boxes, I was conversing perfectly with 
the mini 20 miles away. (It would have taken less 
time, but my son naturally insisted on a few Star 
Raider missions before I linked up.) 

The Communicator kit includes the interface 
module, an acoustic coupled modem, the 
TELELINK I terminal program cartridge, and 
appropriate power supplies and connecting cables. 
There are also instructions on introductory access to 
three of the great big bulletin boards that charge for 
usage after your free hour is gone. The kit is a 
bargain when compared to ATARI'S individual 
prices, but there are alternatives to most of the pieces 
which may reduce the overall cost, or increase the 
capabilities. I'll treat each piece separately: 
INTERFACE MODULE 

The function of the IM is to "interface" the 
ATARI peripheral port to an RS-232 serial interface 
port (it has four) and a single Centronics pafallel 
interface port. Serial ports? Parallel port? Really 
quite simple. A serial interface or port puts the bits 
that represent a character, 7 bits for ASCII, 8 bits for 
ATASCII, a parity bit with ASCII, and control bits 
(called start and stop bits) in SERIES on one wire for 
each direction of transmission, plus a ground return. 
A series of bits, in time, is necessary when a data 
signal is to be carried over the telephone network. A 
parallel interface or port puts each bit on a separate 



PAGE 50 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



wire, so there are seven PARALLEL wires carrying 
the seven bit ASCII code, an eighth wire for parity, 
and a ground return. The parallel port on the ATARI 
IM is intended for connection to a printer, and a 
printer only receives characters. Since data 
transmission is one-way, there is only one set of eight 
wires. In both the serial and parallel interfaces, 
additional wires carry control signals back and forth. 

"RS-232" is the name given by the Electronic 
Industries Association to their particular standard 
for the serial interface that operates at the speed 
range of interest. This standard defines voltage levels 
and connector pin assignments (at the modem), and 
is used universally in the United States. "Centronics 
parallel interface" is also a specification of voltage 
levels and pin assignments (at the printer). An 
American printer manufacturer, Centronics, defined 
this interface years ago, and it has been adopted by 
the printer industry as a standard. The ATARI 825 
dot matrix impact printer is in fact a Centronics 737 
parallel printer. 

You can get into telecommunications without 
buying the ATARI interface module. At least one 
manufacturer (Microbits) offers a modem that plugs 
into a joystick port. However, should you want to 
add a parallel "Centronics type" printer, or upgrade 
your modem capabilities (higher speed or auto- 
dialing) later on, you will be out of luck. This type of 
modem does not have the standard RS-232 
interface, and requires special software to drive it. 
Therefore, all the great public-domain smart 
terminal software described later on in this article 
won't work. While you would be saving about 35% 
on hardware cost, my personal opinion is that, for 
future flexibility, you would be better off sticking to 
the RS-232 standard. 
MODEM 

The next item in the Communicator kit is a 
modem. "Modem" is a contraction of modulator/ 
demodulator, and its function is to transform the 
low-voltage, serial digital signal on the RS-232 
interface wire to an analog signal that can be 
transmitted over telephone lines, and vice-versa. 
Modems come in two basic varieties: acoustic- 
coupled and direct-connect. A third variety, which 
the manufacturer calls direct-connect, but which is 
really a hybrid, is also available. There are modems 
capable of operating at several different speeds, 
which actually means different analog (telephone 
line) modulation techniques that increase in 
sophistication (and cost) as the speed increases. 
However, only two are of interest in bulletin board 
applications. These are: 300 bits per second (bps), 
where the modulation technique is simply two 
standard audio tones that represent the state (0 or 1 ) 
of the bit; and 1200 bps, where the modulation 
technique is somewhat more complex. 

Both modulation techniques are based on Bell 
System standards; the 300 bps technique is often 



called Bell 103 compatible and the 1200 bps 
technique is called 212 or 212A. These designations 
come from the names of the Bell modems that 
operate with the respective modulation techniques. 
As all 1200 bps modems that operate with the 212A 
technique are built under Bell patents, most 
manufacturers call these modems 2 12 As. And most 
212As also operate at 300 bps with the flick of a 
switch. Rather than buying a modem, you have the 
alternative, at least for a while, of leasing one from 
your local telephone company. Because of recent 
FCC rulings, you may be able to buy a Bell direct 
connect 103 type or 2 12 A modem after the first of 
the year 1983. 

The modem that comes with the ATARI 
Communicator kit is a 300 bps, acoustic coupled 
unit that is a Novation Cat in ATARI clothing. An 
acoustic coupled modem has two cups in which you 
place a standard telephone handset after establishing 
a call to the other computer. As used here, 
"standard" means plain-old -ordinary; dial-in- 
handset and designer models won't fit. 

The hybrid modem installs between the base and 
handset of a standard phone (which has a plug-ended 
handset cord.) For other reasons, dial-in-handset 
model phones will likewise not work with the hybrid 
modem. 

As the telephone instrument is doing part of the 
work with acoustic-coupled and hybrid modems, 
these modems are less expensive than true direct- 
connect modems. But there are none in these 
categories that are capable of greater than the 300 
bps speed. The acoustic-coupled modems are less 
reliable because they are subject to interference from 
room noise, TV speakers, computer buzzers, etc. 
True direct-connect modems are more reliable, more 
expensive, and often offer some added features, such 
as automatic answering and automatic dialing. 

A word of caution. If you subscribe to two or 
more party telephone service, it is against FCC rules 
to use a true direct-connect modem. Such use could 
in fact cause you and the other party(s ) difficulty and 
embarrassment at billing time. Further, another 
party trying to initiate a phone call when you are 
transmitting or receiving data will surely mess up 
your data (even with a legal acoustic -coupled or 
hybrid modem). If you are a party line subscriber, 
you will want to convert to individual line service 
before trying data communications. 

Finally, not all (probably "few" is more accurate) 
of the small bulletin boards devoted to ATARI are 
presenriy capable of 1200 bps. After all, they would 
have to buy the more expensive modem too. But the 
higher speed cuts their phone bills, so we can expect 
that more and more will be offering the higher speed 
in the future. All that are capable of 1200 bps are also 
capable of 300 bps. Your decision on 300 vs. 1200 
should be based on the capability of boards you want 
to access and a trade-off between phone bills and 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 51 



modem cost, which of course depends on your 
contemplated use. 
TERMINAL SOFTWARE 

The next piece of the Communicator kit is the 
TELELINK 1 cartridge. Its function is to provide the 
software to turn your ATARI into a remote terminal. 
It automatically sets some interface module options 
— specifically 300 bps, ATASCII/ ASCII 
conversion which ATARI calls light translation, no 
parity, and a few other control functions. Once you 
have dialed the host computer (bulletin board), your 
ATARI becomes what is known as a "dumb" 
terminal. 

TELELINK I is convenient to use, but has no 
capability to capture files in memory. It does have a 
dump-to-printer option, but if you are after a new 
BASIC game on the bulletin board, dumping it to the 
printer only means you have to type it all in to play 
the game. You might as well have typed it in from the 
magazine. TELELINK I not only sends and receives a 
full ASCII character set (per Table 1), but it also 
displays grave accents, curly braces, and carets 
properly on the screen. Not all terminal programs 
have such a character set. 

So how do you turn your ATARI into a smarter 
terminal, one which can capture that program in 
memory or a magnetic media (cassette tape or disk)? 
Well, you can buy one of several smart terminal 
programs, or you can save some money and get a 
copy of one of the very fine smart terminal programs 
that are in the public domain. But, you say, you don't 
know anybody who has one. The answer should be 
obvious — you download if from a bulletin board. 
Later on in this article, we will discuss several of the 
public domain smart terminal programs, and show 
you step-by-step how to download one from a 
bulletin board using the TELELINK I cartridge and a 
short basic program. First, however, there is one 
more item in the Communicator kit which deserves 
discussion. 
CONNECTING CABLES 

The cable that connects the computer to the 
interface module is no problem; it comes with the IM 
which you buy separately or as part of the 
Communicator kit, (If you choose the direct- 
connect modem that plugs into a joystick port, you 
don't need it at all.) 

If you buy the ATARI modem, either separately or 
as part of the kit, you will also get the IM to modem 
cable. However, if you choose another modem, you 
may have to buy or build a cable. The IM end of the 
cable is not a standard RS-232 connector, but a 
smaller one that I presume ATARI chose so they 
could fit four serial ports on one edge of the IM. 
ATARI supplies a cable that will work with any 
standard RS-232 modem, but bought by itself, it is 
quite expensive. If you have a wire stripper and a 
small soldering iron, building a cable is 
straightforward. You will need a DB-9 male plug for 



the IM end and a DB-25 male plug for the modem 
end. You'll also need a short piece of cable with at 
least eight individual conductors, and the following 
table of pin-to-pin connections. 

TABLE 2 
HODQI CABLE 



DTR 
CRX 
XMT 
RCU 



28 
8 
2 
3 



no 



6R(HJND 

OSfi 

RTS 

CTS 

IH connection 



7 
6 
A 

5 

11 



ESTABLISHING A CONNECTION 

Now that you have all the pieces you need — the 
interface module, a modem, and terminal software 
— it's time to explore a bulletin board. You must 
turn on the interface module before you turn on the 
computer. If you are using TELELINK or a terminal 
program on cassette, the RS-232 handler will boot 
from the interface module when you turn the 
computer on. If your terminal program is on a disk, 
the diskette must also have a copy of the 
AUTORUN.SYS file that came with the ATARI 
DOS 2.0S master diskette. When the computer is 
turned on, AUTORUN.SYS boots the RS-232 
handler. The instructions that come with the 
interface module are quite clear on the proper order 
for powering-on the different pieces. 

Set your modem for call-originate and full-duplex, 
and make sure it is also turned on. Now, load and run 
your terminal program. (TELELINK I, being a 
cartridge, will automatically gain control.) If the 
terminal program asks for options (TELELINK 
doesn't), pick these: download, light-translation, 
no-parity, full-duplex. Also make sure your modem 
is set for the right speed as determined by your 
terminal program (300 bps for TELELINK and most 
other programs if unmodified to run at the higher 
rate). If things don't go quite right, you might have to 
try a different parity setting (try even first) or 
translation option. 

Call the bulletin board as though you were placing 
a voice telephone call. If the bulletin board system is 
on-line, it will automatically answer after one or two 
rings and return a high-pitched tone. This is your 
signal to switch to the data mode. If you have an 
acoustic coupler, this means placing the telephone 
handset into the cups on the modem. With a direct- 
connect modem, there is probably a switch that says 
"talk/data". Turn it to "data". 

On your modem, a lamp is ht that indicates it too 
can hear the high-pitched tone. If nothing else 
happens, press RETURN a few times; the bulletin 
board should wake up and announce itself on your 
screen. Many bulletin boards first ask how many 
"nulls" you need. Your ATARI needs none, so type 
"0" (zero). It will also ask for your name, (probably) 
location, and possibly some other questions; for 
instance, can you support lower case (Yes). 



PAGE 52 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



After it is satisfied that you haven't dialed a wrong 
number, it will tell you about itself and how to access 
the message file and the program files available for 
downloading. Pay close attention to the commands it 
needs to pause (usually CONTROL-S), to resume 
(usually CONTROL-Q,or any character), to abort a 
file listing (usually CONTROL-C), and to 
disconnect (usually CONTROL-D or "BYE"). It 
may or may not understand a BREAK, and your 
terminal program may or may not send one. 
(TELELINK I does if you type a SHIFT-BREAK, 
and CONTROL-TAB seems to work with some 
other programs.) 

The reason for the differences in commands and 
responses is that different bulletin board programs 
are used by the host computers. By far the most 
popular for bulletin boards in general is a CP/M 
program, but this is not true of boards devoted to 
ATARI users. Naturally, most ATARI boards are 
ATARIs, and ATARls don't run CP/M. There are at 
least three fine bulletin board programs for ATARI: 
AMIS, ARMUDIC, and TARI-BOARD. What you 
need to do is explore the board, following its 
instructions, until you are comfortable using it. 
CAPTURING A FILE 

I promised that I would explain how to capture a 
listed file on magnetic media if you are starting with 
TELELINK 1 dumb terminal software. You need a 
short BASIC program like the following one. I call it 
QP (quick and dirty) DUMP. It is customized for 
CP/M. I chose CP/M simply because CP/M needs 
some extra translation not required with the ATARI 
programs, but this extra translation won't (except as 
noted) bother AMIS, ARMUDIC or TARL 
BOARD. If you use it with one of the ATARI 
programs, there are some changes that will have to be 
made to incorporate their different commands. The 
statements needing attention are identified by 
remarks. None of the interface module's default 
options are changed, which makes QDDUMP the 
same as TELELINK (300 bps, light-translation, no- 
parity). QDDUMP also assumes your magnetic 
media is a cassette tape. If you have a disk drive, 
change line 210 appropriately. 



10 DIM INLXNE$C12e), QUITS C5) 

19 REM : DEFINE EOF FROM CP/M 

20 0UIT5=CHRSC10} : 01JIT$ {2}="D0ME" 
Z3 HEM :FIHD MEMORY AVAILABLE 

30 N=FREC0J-256 

48 N=N«|;h<=32767J+32767»IN>32767J 

50 DIM TXTSCHJ 

59 REM iOPEH RS-232 PORT 

60 OPEN tt2,13,0,"Rl:" 
78 KIO 40,tt2,8,0,"Rl:" 

80 PRINT tt2;CHR$C17) :REM :START CP/M 

89 REM .LOOP TO GET PROGRAM FROM CP/M 

90 FOR I-O TO 1 5TEP 

100 INPUT »2;IHLINES:TRAP 158 

110 PRINT INLINE^ 

120 IF INLINESraUITS THEN 158 

129 REM : APPEND INLINE$ TO TKTS 

130 TKTSCLENtTXTSJ+lJ:iINLINES 
148 NEKT I 

148 REM : HAIT CBLINDLY) 



149 REM : FOR CP/M PROMPT 

150 FOR Trl TO 20eO:NEKT T 

159 REM : SIGNOFF FROM CP/M 

160 PRINT »2J"BVE" 
170 CLOSE «2 

190 STOP 

198 REM : TO WRITE CASSETTE, 

199 REM : TYPE "GOTO 200" OR "COHT" 

200 DIM BYTSCIJ 

209 REM : OPEN CASSETTE 

218 OPEN tt3,8,0,"C:" 

219 REM : LOOP TO WRITE TO CASSETTE 

220 FOR 1=1 TO LEN(TKTSJ 
238 BYT$=THTSCIJ 

240 BYTE=ASCtBYTSJ 

250 IF BYTE=18 THEN NEKT I 

260 PUT tt3,BYTE 

270 NEKT I 

280 CLOSE n3:END 



You will need a loadable copy of QDDUMP on 
cassette or disk before you use it. Using TELELINK, 
log onto the bulletin board system and get to the 
point where the board is ready to send you the listed 
file. With CP/M, this will follow your command 
"TYPE" followed by a space and the filename. With 
other systems, it may be as simple as picking a 
number from a menu. You will have to tell CP/M to 
stop after its initial response by sending a 
CONTROL-S. Other systems may wait for you to 
type RETURN before sending the file. The point is 
that either it must stop or you must stop it, because 
you've some fast work to do. 

Replace the TELELINK I cartridge with your 
BASIC cartridge and load and run QDDUMP The 
first thing it does is dimension a string called 
INLINE$, which we will use to download a Une at a 
time, and a string called QUITS, which is the string 
that the board sends when it is finished outputting a 
file. With CP/M and a TELELINK in your ATARI, 
this string appears to be "DONE". However, CP/M 
speaks pure ASCII, and pure ASCII uses two 
characters to delimit lines, a carriage -return (decimal 
13) followed by a line-feed (decimal 10). The light- 
translation option we picked changes the carriage- 
return into an ATASCII EOL (end of line character - 
decimal 155), but leaves the line-feed intact, and it 
will appear at the beginning of the next line. 
TELELINK throws the Une-feed away, and we will 
do that too when we record the file. The reason we 
don't throw it away when we get it is that we would 
have to look for it and, in BASIC, that takes time. 
We want the part of the BASIC program that is 
accepting lines to be as fast as possible so we won't 
miss anything. Line 20 of QDDUMP defines the 
CP/M end-of-file as it appears to the ATARI, 
without TELELINK. If you are talking to one of the 
ATARI bulletin board programs, and you have told 
it you don't need line-feeds, then omit the CHR$ 
(10) from the end-of-file definition. 

Lines 30-50 find the maximum free memory that 
can be used for a string and dimension it accordingly. 
The more memory you have, the longer the file that 
can be downloaded, as we will be adding each line we 
download to the string, TXT$. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 53 



Line 80 starts CP/M; CHR$ ( 17) is CONTROL- 
Q,. This line should start any system, as it 
automatically ends with a return. Lines 90 through 
140 are the loop for receiving downloaded lines, 
printing them on the screen, and adding them to the 
string in memory. On an error, or when it sees the 
string the board sends when it is done downloading, 
QyiT$, we go to line 150 which waits blindly for a 
prompt from the board and signs off. The "BYE" in 
line 160 is the string CP/M recognizes as a signoff. 
Having the program do this is to save phone time. 
You've got to save the file you've captured on 
magnetic media before you turn off the computer, so 
you can't put TELELINK back in just yet. 

Watch the light on the modem which lit when the 
board responded with its high-pitched tone. It will 
go out when the board recognizes your signoff, or 
when it gets tired of waiting for another instruction. 
(This is the dirty part of quick and dirty.) Hang up 
your end of the phone connection, and return your 
attention to your ATARI. 

The TV screen should say "STOPPED AT LINE 
190". At this point, you can type "PRINT TXT$" to 
see what you've captured. If there are funny triangles 
at the beginning of each line except the first, those 
characters are the line -feeds we will get rid of in the 
next part. If there are no triangles, you don't need 
line 250, but it does no harm, other than to waste a 
bit of time, to leave it there. After you have installed 
a blank cassette in your 410, or changed Une 210 to 
"D.-filename" if you are using a disk drive, type 
"GOTO 200" or "CONT" and an enterable copy of 
the downloaded file will be written to your magnetic 
media. 

Type "NEW" and ENTER the listed BASIC file. 
You might get a couple of error messages if it finds 
some statements that it doesn't understand, but you 
don't want those anyway. Now you can RUN the 
program, SAVE it, or anything else you could do if 
you had typed it in. 
PUBLIC-DOMAIN 
TERMINAL SYSTEMS 

If you have followed the admittedly cumbersome 
technique outlined above, then you don't already 
have a smart terminal program. When you have one, 
you can throw QDDUMP away, because never again 
will you need it. Don't throw TELELINK away, 
however, because none of the public-domain ter- 
minal programs have the full ASCII capability from 
the keyboard that TELELINK does. Some program- 
ming languages, notably 'C, make extensive use of 
these characters. 

There are several public-domain smart terminal 
programs available. A version of one can usually be 
found on any bulletin board catering to ATARI 
users. I have used three, and while they all do a fine 
job, each has unique properties. All three are written 
in BASIC, but have machine-language routines to 
handle character transfers at high speed. 



JTERM, written by Frank Jones, is my favorite for 
AMIS, ARMUDIC and TARI-BOARD applica- 
tions, primarily because a few additions let it work at 
1200 bps. It is the only one of the three that does. Al- 
though written for disk, it is easily converted to read 
and write listed files on cassette. With a litde bit 
more modification to get rid of line feeds (such as is 
done in QDDUMP), it will write an enterable pro- 
gram file to cassette or disk. (Of course, this isn't 
necessary when the bulletin board is running on an 
ATARI, because ATARIs won't send the stray line 
feeds.) To make maximum memory available for the 
download or upload buffer, JTERM erases some of 
its statements after initialization, so it can't be re- 
started with a simple RESET and RUN command. 

ATERM originated with two modem programs 
published in A.N.A.L.O.G. Computing (Down- 
load Terminal, issue no. 2, and Upload Terminal, 
issue no. 3). These two programs were combined 
and extended by Bob House and Marshall Abrams. 
ATERM has the unique advantage of a help (instruc- 
tion) file that should be written on the same disk as 
the program. As it comes in three parts, it is incon- 
venient for cassette users. 

AMODEM, written by Jim Steinbrecher, is THE 
program for CP/M applications. It works in con- 
junction with a program called XMODEM on the 
CP/M machine. With it you can upload and down- 
load machine language, tokenized BASIC, and Music 
Composer files as well as listed BASIC and text files. 
And it's all automatic, including retrials if it deter- 
mines an error has been made during file transfer. 
Version 4 of AMODEM works with a cassette re- 
corder. Version 4 can also be used with AMIS, 
ARMUDIC and TARI-BOARD bulletin boards to 
transfer listed files. Jim Steinbrecher has also pro- 
vided a nice documentation file for Version 4. Ano- 
ther very nice document is called "The XMODEM, 
AMODEM, CP/M Saga," by Greg Leslie. I down- 
loaded both from bulletin boards. AMODEM's only 
deficiency is that it won't work at 1200 bps. I guess 
the machine language routines have so much else to 
do. 
PHONE NUMBERS 

So, you say, now I know how to access a bulletin 
board. But how do I locate one to call? Never fear, for 
the final table gives a list. I won't guarantee its accur- 
acy, and certainly not its completeness, as new 
ATARI boards are cropping up all the time. Current 
lists are kept as files on many of these bulletin 
boards. Many of these boards are not 24-hour-a-day 
operations, but most will be on-line nights and 
weekends. If a voice instead of a tone answers, the 
voice will be able to tell you the hours of operation. 
Who knows, maybe soon you will be the "SYSOP" 
of your own ATARI bulletin board. D 

(continued on page 55) 



DON'T ASK PROVIDES THE MISSING LINKS 



oo>the link between your modem and the outside world. For hassle-free 
communications, phone right in with TELETARI, The Friendly Terminal. 




Your Atari has never had such easy access to the whole world of telecommunications - bulletin boards, news reports, large time- 
sharing computers, the works. Now it's a snap to tap into all these, and it's just as easy to transfer your program or text files to and from a 
remote computer. Meet TELETARI, The Friendly Terminal. It's just what your modem needs: a powerful, adaptable telecommunications 
package that's a cinch to use. With TELETARI, you simply choose the desired communications function from a menu. Commonly used 
terminal parameters are included in the program, but you can change them to suit your needs with a couple of keystrokes, using another 
handy menu, and store the ones you plan to use again. TELETARI's generous buffer stores up to 20K, so you can review, print, or save 
received information long after you've hung up the phone. You never knew using a modem could be so convenient. Because it's very 
flexible, TELETARI is compatible with most modems and a wide variety of computers. And because it works through the RS 232 port, 
TELETARI is not limited to modem/telephone uses. Put it to work in any RS232 application your imagination can devise - even operating a 
laser disk! 

• buffer of up to 20K •menu-driven • highly adaptable • supports all 850 options 

• compatible with 1 200 baud modems and BIT 3 Full-view 80™ board • suitable for any RS232 application 

$39.95 Requires Basic, 32K RAM, disk, 850 Interface 

CX» the link between BASIC and arcade-style graphics. Draw and animate pictures for your own BASIC games 
and other programs with pm ANIMATOR. Create running men, flying rockets, moving figures of all kinds. 



A 



^ 



i 



^ 



1 




BASIC programmers, pm ANIMATOR puts the power of 
Player-Missile Graphics at your fingertips. 

$34.95 Requires 32K RAM, BASIC, disl<. 



"^animator 




To order direct from Don't Ask, send a cfieck or money 
order, or call to order COD. Add $2.00 for shipping and 
handling. California residents add 6% sales tax (6.5% if 
you reside in L.A. County). 



C>-C» th»e link between fast game action and verbal learning: 



^=i!!l>Rl>RAC^ 



Kids and adults, increase yourvocabularywhileyou compete in this 
exciting word game. 
Disk version: 

3 levels of play - Beginner, Regular, Challenge 

Requires 32K RAM. disk. BASIC. $24.95 
Cassette version: 

2 levels of play- Beginner, Intermediate 

Requires 16K RAM, cassette, BASIC. $19.95 

turn WORDRACE into a history game or a famous athletes 
game, and get more vocabulary words, with the WORDRACE 
accessory disk: CLAIM TO FAME/SPORTS DERBY. 3 new games in 
all. 
Disk only. Requires WORDRACE disk. $19.95 



a Irademarft of Alan, Inc. Full-view 80 is a trademark ol BiT 3 Computer Corpora 




o-o> the link between you 

and what your Atari is 

really thinking: 

AeUSE 

the insult-exchange program. 
Have you cursed out your computer? Now 
it can understand you and answer back! 
Requires 40K RAM. BASIC, disk. $1 9.95 
Release your aggressions! Inflict ABUSE 
on anyone who's got it coming! 



DON'T ASK 

Q-O^ the link between technical excellence 
and the fun of computing. Why do we give 
you so much? Don't Ask. 



DCDfYT ASK 

COMPUTER SOFTWARE 



2265 Westwood Bl., Ste. B-150 

Los Angeles, CA 90064 
(213)475-4583 or 397-8811 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 55 







TABLE 3 










ATARI BULLETIN BOARDS 








(Readers should he advised that some phone numbers may have 


changed 




bet 


ween the time of publication and the 


readers' access of a particular system.) 




AMIS 












Cupertino 


CA 


408-253-5216 


New York 


NY 


212-598-0719 


San Jose 


CA 


408-298-6930 


Oklahoma City 


OK 


405-722-5056 


San Jose 


CA 


408-244-6229 


Eugene 


OR 


503-343-4352 


San Jose 


CA 


408-942-6975 


Pittsburgh 


PA 


412-655-2652 


Denver 


CO 


303-758-6233 


CP/M 






Miami 


FL 


305-238-1231 


Chicago 


IL 


312-789-0499 


Honolulu 


HI 


808-833-2616 


Baton Rouge 


LA 


504-273-3116 


Chicago 


IL 


312-789-3610 


Boston 


MA 


617-266-7789 


Boston 


MA 


617-876-4885 


Royal Oak 


MI 


313-759-6569 


Detroit 


MI 


313-589-0996 


Oklahoma City 


OK 


405-848-9329 


Grand Rapids 


MI 


616-241-1971 


Allentown 


PA 


215-398-3937 


Sterling H'ghts 


MI 


313-978-8087 


Philadelphia 


PA 


215-836-5116 


Monroe ville 


PA 


412-372-0616 


Hawkins 


TX 


214-769-3036 


Seattle 


WA 


206-228-9401 


TARI-BOARD 






Spokane 
Madison 


WA 
WI 


509-582-5217 
608-251-8538 


Denver 
Atlanta 


CO 
GA 


303-221-1779 
404-252-9438 


ARMUDIC 






Madison 


NJ 


201-377-4084 


San Francisco 


CA 


415-527-8276 


Mount Holly 


NJ 


609-267-7825 


Washington 


DC 


202-276-8342 


Princeton 


NJ 


609-924-5875 


Silver Spring 


MD 


301-587-2132 


Beechwood Falls 


OH 


216-582-2792 



THE MONKEY WRENCH FOR ATARI 



$49.95 

(See the many 

reviews.) 



A BASIC and machine language 
'fT^Ms programmers aid for 800 users. 
pSiji \ i Plugs into right slot and works 

^>WV with ATARI BASIC. Adds 9 new 

Vp^j_ direct mode commands in 

*" eluding auto line numbering, 

delete lines, change margins 
memory test, renumber BASIC, 
hex/dec conversion, cursor ex 
change, and machine language 
monitor. 
The monitor contains 15 commands used to interact with 
the 6502. Some are display memory/registers, disassem- 
ble, hunt, compare, hex/dec convert, transfer memory. 
Uses screen editing. 

MACHINE LANGUAGE MONITOR 
FOR ATARI USERS 

A must for anyone interested in machine language and 
wanting to know more about how the computer works. 
Provides 21 easy to use commands. Uses screen editing. 
Cassette - $24.95 Diskette - $29.95 
TYPING EXERCISE 

A great educational program. Consists of typing drills 
and timed typing tests. Diskette - $12.95 




ATARI AND PET 
EPROM PROGRAMMER 

Programs 2716 and 2532 
EPROMs. Includes hardware 
and software. PET = $75.00- 
ATARI lincludes sophisticated 
machine language monitor) = 
$119.95 

EPROM BOARD FOR ATARI 

The EPROM board plug into the cartridge slots. Uses 
2716, 2532, and other EPROMs. May contain up to 8K. A 
must for making your own machine language programs. 
$19.95 

EPROMS - HIGH QUALITY, NOT JUNK 

Use with PET, APPLE, ATARI, SYM, AIM, etc. 450 ns. $6.50 
for 2716, $12.50 for 2532. We sell EPROM programmers 
for PET and ATARI - see above. 
5% INCH SOFT 
SECTORED DISKETTES 

Highest quality. We use them on 
our PETs, APPLES, ATARIs, and other 
computers. 

$22.50/10 or $44.50/20 




MAE SOFTWARE DEVELOPMENT SYSTEM 
More than just an Assembler/Editor! 



It's a 

Professionally 

Designed 

Software 

Development 

System 




MAE 

for 

PET 

APPLE 

ATARI 

$169.95 



Blast off with the software used on the space 
shuttle project! 

• Designed lo improve Piogrammei Pfodydivity 

• Simiiaf synlax and commands --No need lo relearn peculiar 
synlaxes and commands when you go from PET lo APPLE 
10 ATARI 

• CoresidenI Assembler/Editor - No need to load the Editor then tlie 
Assembler men tite Editor, etc 

• Also includes \Afaid Processor, Relocating Loader, and much 
more 

• Options EPROM Programmer, unimplemenled opcode circuitry 

• STILL NOT CONVINCED Send loi liee spec stieel' 



MEMORY TEST 

Avoid problems with ATARI RAM cartridges. Don't let 
your guarantee run out without a test. Cassette - $6.95, 
Disk - $9.95 



3239 Linda Dr 

Winston-Salem. N.C. 27106 
(919)924-2889 (919)748-8446 
Send for free catalog! 




PAGE 56 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



ICheChallengt of the Quest 



by Brad Griffin 



In a remote part of Angola, the fair maiden, 
Glanoa, shivers with fear and disgust as the evil 
Captain Moonglug approaches. Her skin crawls as the 
vile scientist, caressing the silken strands of her hair, 
whispers in her ear, "You are mine now. No one can 
save you." As the foul stench of his breath causes our 
lady to recoil, a gust of fresh air with a hint of 
honeysuckle pervades the dark room of her 
imprisonment. Could this be an omen of hope? Or is 
it something too perverse to imagine? Far away, in 
the outer reaches of the desert known as Gala hlo, a 
lonely figure wanders aimlessly from dust to dune. 
Alan Og, a soldier of fortune, about to give up all 
hope of surviving, catches the faint hint of 
honeysuckle in the wind. A mystifying force surges 
through the sinewy body, as the wanderer feels a 
sense of purpose. He knows that the fairest maiden 
of all is a captive of the dreaded one, and he, Alan 
Og, is her only salvation. He begins the search 
anxious to encounter the one known as "pond 
scum", the villainous Captain Moonglug. 

So begins your adventure into lands unknown, 
against never-before-dreamed-of foes. Among the 
scores of games in the burgeoning software market, 
the computer adventure is a genre of its own. What is 
an adventure? How does one play it? Who plays 
adventures? Are they all the same? We shall explore 
the computer adventure with all of its variations and 
review representative simulations from the different 
groups. 

Deciding what games should be included in the 
category of adventure is becoming increasingly 
difficult. As programmers search for original ideas 
and games to attract the public, combinations of 
arcade and adventure games further cloud the issue. 
An adventure has been defined as a bold 
undertaking, in which hazards are to be met and the 
issue hangs upon unforeseen events. Using this 
definition as a guideline, we shall explore computer 
adventures. 

There is stark contrast between the adventure 
game and the arcade game. Frequently, this same 
contrast exists in people. Arcade addicts with their 
lightning quick reflexes and unparalleled persistence 
must eventually succumb. They may achieve a higher 
score, but the invaders (centipedes, et al) always 
prevail, and losing is inevitable. The adventurer 
knows there is always hope, and, if one is clever and 
possesses dogged determination, The Quest will be 
accomplished. It is the possibility, even the 



probability, of success, that truly differentiates the 
adventure from other simulations. An arcade game is 
like shooting basketball; the more one does it, the 
better one becomes. A variety of obstacles may 
prevent one from reaching perfection or totality. 
Distance from the hoop, angle of the shot, fatigue, 
and the ever present, "in your face!", all enhance the 
game, but deny perfection. An adventure is like 
reading a book. The story line exists and the 
resolution is sought. The adventure game differs 
from the book in that one must be an active 
participant instead of an omniscient observer or 
reader. There is jeopardy in a computer adventure. 
The ever-present risk of being wasted in an 
encounter with a monster of low degree always 
exists; however, the true peril is faiUng to solve the 
puzzle and never achieving the final goal. This is like 
reading a mystery and never having the opportunity 
to finish the final chapter. The exhilaration of 
discovering the clue which finally enables one to get 
the key from the ogre by tickling its froboosh is not 
found in any other game. The exasperation of being 
unable to cross the ravine, beyond which is a buried 
treasure, is unmatched. The sense of 
accomplishment and pride when success is at hand is 
universal. The desire to complete the quest, and the 
anxiety in mastering the final obstacle give way to the 
feeling that a friend has been lost. Much the same 
feeling one has when a book is finished. The only 
way to rid oneself of this depression is to begin a new 
adventure. Quite a hardy lot these adventurers. 
Some of the newer adventures have random features 
assuring one of a different adventure with each new 
game. 

The basic scheme in an adventure is to advance 
through a series of mazes to reach a final goal. Each 
section of the maze may be depicted as a room, a 
forest, or even the inside of a tourbillion? Traveling 
from one section to the next may simply require a 
command, such as, "GO DOOR." Certain items 
may be needed to allow progress. E.g., one must use 
the stick to knock the apple from the tree to throw at 
the fire-breathing Galumph, who, being terrified of 
apples (specifically. Golden Delicious), runs away, 
dropping the key to the secret door. Most objects 
have a purpose, but not one that is always apparent. 
There is usually a limit to the number of items one is 
permitted to carry, requiring discrimination in the 
load carried. Drawing a map is essential for most 
adventures. Dropping objects as one explores the 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 57 



maze, ala Hansel und Gretel, avoids traveling in blind 
loops, and the search for the way in or out is 
simplified. 

The basic concept in computer adventure games is 
to reach an ultimate goal, whether it be to 
accumulate a certain number of *TREASURES*, 
rescue the princess, or discover the guilty culprit. 
However, adventures are not all the same. The most 
fundamental difference is the format of the 
adventure. These have been described by others, but 
the use of generalized terms has made these 
distinctions confusing. The most commonly abused 
term is "graphic adventure." Every adventure games 
uses graphics to some degree. How does one discern 
the difference between a game with a static graphic 
display of what the adventurer sees and one with a 
scrolling graphic map, where the adventurer is seen 
as a figure within the representation? Both are 
described in advertisements as graphic adventures. 
The following categorization may remove some of 
this confusion. There are two basic types of 
computer adventure games; the text adventure and 
the action adventure. 

TEXT ADVENTURES 

Here the adventure scenario and progress through 
it are conveyed with the written word. There are 
three kinds of text adventures. The Pure Text 
Adventure uses only written text. Usually, the 
adventurer sees through the eyes of a "puppet" and 
communicates using two word commands, a noun 
and a verb. The surroundings are described in some 
detail and the objects in view are listed. Objects are 
used by typing specific commands, such as, "TAKE 
AXE", or "USE AXE". The program responds with 
"OK" if it is an appropriate command, or with "1 
DON'T KNOW HOW TO USE AN AXE." At 
times, one may feel compelled to "USE AN AXE" 
on the computer. The possible routes of exit from 
each location are displayed. Movement is 
accomplished using directional commands. Most 
adventures permit use of abbreviations, so instead of 
typing "GO NORTH", using "N" is sufficient. 
Other directions are abbreviated as S,E,W,U (up), 
and D (down). An inventory (1 or INV) command 
displays the objects one possesses at that moment. 
Hints to aid the novice may suggest the correct word 
to use in a certain situation. Hints may also provide a 
classic straight man setup, as Scott Adams 
demonstrates when he suggests using the command 
"WEIGH ANCHOR". The more advanced 
adventure games do not contain hints within the 
program itself, although many hint books are 
available separately. (The Zork Users Group 
superbly complements Infocom's series of 
adve,'A«LV!.':^s with maps, blueprints, posters, hint 
books, T-sVv\ns, etc.). Scott Adams' Adventures fall 
into this category, as ^^o most of the APX adventures. 
Infocom's adventures allow the input of full 
sentences with multiple commands, successfully 



simulating actual conversation. 

Slightly different is the Enhanced Text Adventure in 
which something extra is added to the basic text 
format. This may be done using sound or a 
simplified illustrated panel to embellish the overall 
effect. LABYRINTHS from R C.A. is an example of 
an enhanced text adventure. Commands are selected 
from a menu, while sound effects for combat and 
changes in the background color for different 
locations are used. 

The third type is the Illustrated Text Adventure 
where every location (room, panel, portion of the 
maze) is a picture of what the adventurer would be 
seeing. The static graphic display is accompanied by 
text in the lower window. Keyboard commands, as 
with other text adventurers, are used. If an object is 
picked up, or an action taken that would alter the 
scene depicted, e.g. cutting down a tree, the pictorial 
display is redrawn to show the changes. Although 
challenging in their own right, these adventures may 
be limited in scope, since an illustrated, and 
hopefully recognizable, object must appear on the 
screen. WIZARD AND THE PRINCESS, an Sierra- 
Online Systems Inc. Hi-Res Adventure, is an 
example of an exciting adventure scenario with high 
quality graphic illustrations that does not sacrifice 
the challenge of pure text adventures. 

ACTION ADVENTURES 

There are two sub-groups in this category. The 
Personified Adventure is a group that is most varied 
and difficult to classify. They are often referred to as 
graphic adventures, mapped adventures, or role- 
playing fantasy adventures. The adventurer is 
usually represented by a symbolic human figure 
(ergo, personification) which is able to be moved 
about the screen from one location to another. As 
the edge of the screen is approached, it scrolls to the 
adjacent area. Control is through a combination of 
keyboard commands and joystick manipulation. 
The commands are most often in menu form and are 
quite limited. Consequently, the commands are 
known to the player and the challenge (or 
frustration) of discovering the game's special 
vocabulary is missing. Random encounters with 
danger highlight the quest, and combat is frequent. 
After achieving the final goal, the random nature of 
these games allows theni to be played repeatedly. 
ALI BABA AND THE FORTY THIEVES by 
Quality Software is an example of this type of 
adventure. 

Arcade Action Adventures are unique in that they 
require use of motor skills to facilitate interaction 
with the game. Features of the other adventure 
formats are incorporated, but quick responses to 
invading aliens, etc. are necessary. The display may 
be similar to the illustrated text, and animation 
added by having foes appear periodically. Unlike 
other adventures, the goal may be to attain a high 
score, rather than achieve a final success, although 



both goals are usually embodied in the arcade 
action adventure. The cerebral challenge of 
decifering clues and the mental images created by the 
text-based adventures are replaced with the reflex 
response to the droid which just appeared and 
blasting it to Cleveland where it will never be heard 
from again. STAR WARRIOR from Automated 
Simulations is a personified adventure with arcade 
action. 

There are adventure players who consider 
themselves purists and only play the text adventures. 
They are involved in the challenge of the word game 
aspects and solving the mystery. The illustrated text 
and action adventures provide an enjoyable variety. 
There may be major differences between adventures 
with the same format. Documentation, game-save 
feature, real-time element, completion time, and 
originaUty of the scenario are a few areas where these 
differences occur. 

The only way to find out if you will enjoy 
adventure gaming is to try it. For the beginner, Scott 
Adams' PIRATE ADVENTURE or Online's 
MISSION ASTEROID provides a good 
introduction. They are both available in illustrated 
text versions (PIRATE ADVENTURE is also 
available as pure text and on cassette for less money ). 
Both are challenging, but not impossible, and will 
give hours of pleasure. If you want greater challenges 
after whetting your appetite, a bounty of adventures 
await you — many reviewed in this issue. Naming the 
best adventures is difficult because of wide variation 
in individual preferences. All of Scott Adams' 
Adventures are well done and original. WIZARD 
AND THE PRINCESS (Online Systems Inc.) was 
the first high quality illustrated text adventure 
available for the ATARI. This Hi-Res Adventure by 
Ken and Roberts Williams is still the standard of 
excellence in its field. ALI BABA (Quality Software) 
is without peer in the personified adventure arena. 
Stuart Smith has created a role-playing fantasy with 
many special features that no other adventure of this 
type has even remotely approached. ALI BABA's 
originality, payability, and use of ATARI'S unique 
sound and graphics capabilities are unparalleled. 
Though not considered here as a true adventure 
game, CRUSH, CRUMBLE, AND CHOMP (Epyx 
Simulations) is a role-playing fantasy with the player 
starring as one of many available movie monsters 
attempting to destroy any of four major world cities. 
It is great fun. SNOOPER TROOPS (Spinnaker) 
offers an excellent combination of all the above 
formats, and though its advertisements seem to be 
aimed at children, it is challenging and fun for all 
ages. 

No article on adventures would be complete 
without mentioning the creators of the first 
adventure, Don Woods and Willy Crowther. Their 
original trek through Colossal Cave has been 
recreated by many. A version of this classic 
adventure game should be part of every serious 
adventurer's collection. Let The Quest begin. D 



Fantasy for your ATARI 

Alt B^b^ 

Atit> the fort\i tViicves 



By Stuart Smith 




A fantasy role-playing adventure for 
Atari Personal Computers. 

Encounter sultans, thieves, fierce and friendly 
creatures as you guide your alter ego. All Baba, 
through the thieves mountain den in an 
attempt to rescue the beautiful princess. 
Treasure, magic, and great danger await you! 
One or more human players can guide up to 
seventeen friendly characters through the 
many rooms, halls, and caves. Some characters 
wander around randomly, making each 
adventure a little different. 

ALI BABA AMD THE FORTY THIEVES is written in 
high resolution color graphics and includes 
music and sound effects. Adventures can be 
saved to disk and resumed at a later time. 
Atari 800 32K. 

On diskette only — $32.95 



FOR OUR COMPLETE LINE OF APPLE AND ATARI SOFTWARE 
PLEASE WRITE FOR OUR CATALOG 

ASK FOR QUALITY SOFTWARE products at your favorite computer store. If neces- 
sary you may order directly from us. MasterCard and Visa cardfiolders may place 
orders by calling us at (213) 344-6599. Or mail your clieck or bankcard number to 
the address above. California residents add 6% sales tax. Shrpprng Charges.' Within 
North America Qcdets must include $1.50 for shipping anb'naniVmg.Oulside North 
America the charge for airmail shipping and handling is $5.00. Pay in U.S. currency 

QUTiLrry 

SOFTW7IR6 

6660 f?eseclo Blvd.. Suite 105, f?eseda, CA 91335 (213) 344-6599 




COMPANY/GAME 


FORMAT 


REQUIREMENTS 


SKILL LEVEL 


GAME 
SAVE 




INTER- 
FACE 


EXTRA 
FEATURES 


ADVENTURE [NTERNATIONAL 














Adventures 1-12 


Text 


24K/Cass,32K/Disk 


Novice'=>Advanced 


Yes 




K 




S.A.G.A. 1-? 


Illustrated Text 


48K/Disk 


NoviceOAdvanced 


Yes/Ml 


ultiple 


K 


2,3 


Curse of Crowley Manor 


Text 


16K/Cass 


Advanced 


Yes 




K 




Escape from Traam 


Text 


16K/Cass 


Advanced 


Yes 




K 




ATARI PROGRAM EXCHANGE 














Alien Egg 


Text 


24K/Disk (BASIC) 


Novice 


No 




K 




Castle 


Text 


24K/Disk (BASIC) 


Novice 


No 




K 




Chinese Puzzle 


Text 


24K/Disk (BASIC) 


Intermediate 


No 




K 




Galafiad and tfie Holy Grail 


Personified 


32K/Disk 


Novice 


No 




J 




Sleazy Adventure 


Text 


32K/Disk (BASIC) 


Intermediate 


No 




K 




Sultan's Palace 


Text 


32K/Disk (BASIC) 


Novice 


No 




K 


R-Rated 


Wizard's Gold 


Text 


24K/Disk (BASIC) 


Novice 


No 




K 




Wizard's Revenge 


Text+ 


24K/Disk (BASIC) 


Intermediate 


No 




K 




AUTOMATED SIMULATIONS 














Crush, Crumble & Chomp 


Person/Arcade 


32K/Cass/Disk 


Novice 


No 




K 


1 


Crypt of the Undead 


Personified 


40K/Disk 


Novice 


No 




J 




Curse of Ra 


Personified 


32K/T/D 


Intermediate 


No 




K 




Temple of Apshai 


Personified 


32K/T/D 


Intermediate 


No 




K 




Datestones of Ryn 


Person/Arcade 


32K/Cass,32K/Disk 


Novice 


No 




JK 


1 


Dragon's Eye 


Personified 


40K/Disk 


Novice 


Yes 




J 




Escape-Vulcan Isle 


Personified 


40K/D 


Novice 


No 




J 




King Arthur's Heir 


Personified 


40K/D 


Novice 


No 




J 




Rescue at Rigel 


Personified 


32K/T/D 


Novice 


No 




K 




Star Warrior 


Person/Arcade 


32K/Cass/Disk 


Novice 


No 




K 


1 


AVALON HILL 
















Empire of Overmind 


Text 


40K/T/D 


Advanced 


Yes 




K 




Lords of Karma 


Text 


40K/T/D 


Novice 


Yes 




K 




DATASOFT 
















Sands of Egypt 


Illustrated Text 


16K/Disk 


Intermediate 


Yes/Ml 


iltiple 


K 


Animated 


INFOCOM 
















Deadline 


Text 


32K/Disk 


Intermediate 


Yes/ Ml 


iltiple 


K 


1,2 


Starcross 


Text 


32K/Disk 


Intermediate 


Yes/Multiple 


K 


1,2 


Zork 1, II, & III 


Text 


32K/Disk 


Intermediate 


Yes/ Ml 


iltiple 


K 


1,2 


JV SOFTWARE 
















Action Quest 


Arcade 


16K/T/D 


Novice 


No 




JK 




Ghost Encounters 


Arcade 


16K/T/D 


Novice 


No 




JK 




ON-LINE SYSTEMS 
















t^ission: Asteroid 


Illustrated Text 


40K/Disk 


Novice 


Yes/ML 


iltiple 


K 




Softporn Adventure 


Text+ 


40K/Disk 


Novice 


Yes 




K 


R-Rated 


Ultima 1 & II 


lllustratedText 


48K/Disk 


Intermediate 


Yes/ML 


iltiple 


K 




Ulysses and the Golden Fleece 


Illustrated Text 


40K/Disk 


Intermediate 


Yes/ML 


iltiple 


K 




Wizard and Princess 


Illustrated Text 


40K/Disk 


Intermediate 


Yes/ML 


iltiple 


K 





P.C.A. 

Labyrinths Text+ 

QUALITY SOFTWARE 

AM Saba and the 40 Thieves 

SPINNAKER SOFTWARE 

Snooper Troops #1 
Snooper Troops #2 

SYNERGISTIC SOFTWARE 

Probe 1 — Transmitter 
Warlock's Revenge 



32K/T/D (BASIC) Novice 



No 



Personified 


32K/Disk 


Novice 


Yes/Multiple 


K/J 


1,4 


Mixed 


40K/D 


Novice 


Yes/Multiple 


K 


Educational 


Mixed 


40K/D 


Novice 


Yes/Multiple 


K 


Educational 


IE 

Arcade 


40K/Disk 


Novice 


7 


JK/PK 


1 


Illustrated Text 


40K/D 


Novice 


Yes 


K 





LEGEND 

FORMAT 

SKILL LEVEL 
\NTERFACE 



— Text = Pure Text; Text+ = Enhanced Text; Illustrated = Static Graphics; Person = Personified Graphic or Mapped; 
Arcade = Mobile Enemy, Motor Skills needed; Mixed = Unique Combination, animated/personified, motor skills. 

— Level of expertise or experience needed to successfully interact or complete adventure. 

— K = Keyboard alone; J = Joystick; JK = Joystick and Keyboard used together; K/J = Either utilized 



EXTflA FEATURES— "^\ ^.-atv^iom variations; 2) Printer output; 3) Voice synthesizer; 4) Two or more players possible. 




>i\ 



EDUCATIONAL SOFTWARE 

PROUDLY PRESENTS 

TRICKY TUTORIALS™ 8 Thru 1 1 

FOR ATARI® COMPUTERS 




m - Create and animate your 
own character sets using the 
same methods used in many of 
your favorite games. Includes a 
great editor, utilities, examples, 
and a complete Space Invaders 
look-alike, all explained in detail. 




GTlA 

GRAPHICS 







16K TAPE OR 32K DISK ONLY $29.95 EACH! 



1(9 - Learn to use Graphics 
modes 9, 10 & 11 giving you 16 
shades or 9 colors, all from 
BASIC. Create programs never 
before possible such as three 
dimentional shapes and digitized 
pictures, all explained in great 
detail. 



#^0 - Find that perfect sound ef- 
fect for your games and pro- 
grams. Includes over 50 effects 
ready to use and explains how 
they were written. Special 
utilities are included to allow you 
to develop your own sound 
effects. 



#1 1 - Our famous Memory Map 
now COMES ALIVE in this 
TUTORIAL. Included are thirty of 
the most useful POKE locations 
within the ATARI, each fully ex- 
plained with interactive ex- 
amples. See the tricks you have 
always heard about. 



PROGRAM 
EXCHANGE 

EDUCATIONAL SOFTWARE inc. 



OUR NEW PROGRAM EXCHANGE 

FEATURING THE FINEST PROGRAMS 
FROM AUTHORS AROUND THE WORLD: 




THE ESI PROGRAM EXCHANGE OFFERS A $24.95 WORD PROCESSOR (TAPE OR DISK), A $19.95 GRAPHICS TOOL THAT USES 
SINGLE WORD COMMANDS, A FAMOUS CHARACTER EDITOR FOR ONLY $19.95, A DATABLE PROGRAM |$24 95) WAT ACTUALLY 
DIALS YOUR PHONE AS WELL AS KEEP YOUR RECORDS AND OVER 20 MORE' 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 61 



EPSON 



X 



PRINTING MODES 
SIMPLIFIED 



'''^''fi'immmmm. 



by Thomas M. Krischan 



Tired of coding all those CHR$(xx) statements to 
generate an EPSON printing mode? The User's 
Manual uses the Model I TRS-80 as its teaching sys- 
tem. Consequently, ATARI computer owners find , 
that many of the well documented examples don't 
work. At first glance, the EPSON printing modes 
seem strangely and lengthily encoded. For illustra- 
tion, say we wish to print a line of double strike 
compressed expanded mode. We would have to type 
in this: 



I.PRItJT CHRS{27); CHRSC71}; CHRSf27J; C 
HRSC70]; "text"; CHRSC27J; CHR$C72); C 
HR5<27J;CHRS<69) 



That accounts for 72 keystrokes dedicated for 
control codes. Half to enable the mode and half to 
disable it back. Rejoice, there is a simpler way. 
GRAFTRAX-80 and the ATARI computer are a 
great combination. 

CHR$(27) is an escape code CHR$(69), 
CHR$(70), CHR$(71), and CHR(72) set printing 
modes. Each of these express a single ASCII value 
which just so happens to also represent a single 
printable screen character. Try typing this: 

? CHRSt27Jj CHRSt27>; CHRSt6<J>; CHRSC7 
«IJ ; CHHSC71J; CMRSC72) 

Aha! %EFGH. Note that \ corresponds to the 
ESC key and that only one h. is printed. The first \ 
is used by the computer, but that's another story. 
Back to the printing modes. Try typing this little 
gem: 

LPHIHT "tGtHtexttH^F" 



(Remember to use the ESC key twice for each \ 
symbol). 

Hey, that's the same print mode as our first illus- 
tration. And this uses only 8 keystrokes for control 
codes, or 12 if you're a purist and consider double 
presses. In either case it's much less than 72. 

Before you go racing off to your printers, let's 
explore more about character codes. There are only 
5 true character control codes (Table 1). 





TABLE 1. 


ON 
CODE 


OFF 
CODE 


FIJHCTTOM 


E 
G 
P 
R 

4 


F 
H 
Q 
5 
5 


Enphasized 
Double Strike 
COMipressed 
Expanded 
Italic?; 



We must include the necessary preceeding escape 
code before each of these. By specifying all possible 
combinations we obtain 32 character modes 
(2**5 = 32). These are displayed in Table 2. Note 
that only 24 character modes are unique. The Em- 
phasized code (E) nullifies the Compress code (P). 
The first line in Table 2 was generated by: 

LPRIMT "%F%HtOt5t50ee88FHQS5" 

. . .where "^FtH'iO^'itB" are the necessary control 
codes and "OeoeOFHOtiS" is the printed text. 

By the way, if you use escape codes in a program it 
becomes non-listable on the printer, but will list to 
the screen. 



PAGE 62 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



TABLE 2 


.-!' .■)' :)'" .'■' ■!'" '.'.' -■:■■ '.}' ;;i' :''- - .■['-■J'' S'' ■!' '■■-.." .:i::jy.' 

O0 10 0FHPS5 


00 JO J F MPS 4 


001iOFHPS5 
MIUffiPM 


<:> 1, XI J O C> i"-"" illrii Q :E3 ":;;::» 


•i;:> .2'' <:> <:> -if /■- ■ .& .g? sr •■*!' 


01010FBQR5 


<:>;'<:>,/i'.//-77.';^/(?¥ 


01 100FePS5 


0JI0JFePS4 


01110FGPR5 


OmiFSPM 


1 c_>c_Jt_>c_>E:HQS;!£i 


^<>oo^^//os--^ 


10O1OEHQR5 


iC>Oi'i£//«.fl^ 


1. C* 1 €!>€!> EEHR-S;^ 


^ O ^ o .z ^ /y /=*s- -^ 


lOliOEHPRS 


iC>i2/£.VP,^# 


1 iOOOEOQSS 


J ^OOJE ^GGtS-^ 


llOlOEeORS 


-^yo/ifsa/j-^ 


± 1 lOOEGF^SS 


JJEJO^EIGPS^ 


11110E6PR5 


11211E&PR4 



Now we will explore spacing codes. If you have 
tried the underlining example in the EPSON User's 
Manual you found that it doesn't space correctly 
with the ATARI computer. Try typing in this 
example: 



le LPRINT "tA-iUNDERLINE" 

28 LPRIMT " \e\" 

3e LPRINT "IS FftKEDI^fl'" 
40 LPRINT "NORHAL LINE." 
and RUN 



mam j=esc esc 

•=CTRL L 



1=CTRL E \=CTRL G 



Let's explain how it works. Standard (i.e. default) 
spacing consists of 12 vertical dots or 1/6 inch. 
Upper case letters use the top seven dots (dots 1-7), 
leaving the bottom five dots blank (dots 8-12). 
Vertical line spacing can be changed using an ecA 
control code. The number following the control 



code signifies the number of vertical dots in a line, 
from 1 to 85. The ATARI keystroke which corres- 
ponds to 1 is "Ctrl A", 2 is "ctrl B", etc. In our 
illustration we do not specify a type of vertical line 
spacing. The default is twelve vertical dots. The top 
of our line is dot #1 and the base of our line is dot 
#12. Statement (10) activates the top seven pins in 
our printer head and we print "UNDERLINE" on 
dots #1 through #7. We then change our line spacing 
to a five dot vertical line. In statement (20) we skip to 
the next printer line. Our top is now dot #6 and base 
is dot #17. We activate pin number four and print 
several dashes. Pin number four is located on dot #9. 
We again readjust our line spacing to a seven dot 
vertical line. Then, in statement (30) we skip another 
printer Une. Our top is now dot #13 and base is dot 
#24. We are positioned on a standard spacing base 
line (i.e. 24 is divisible by 12). We then print "IS 
FAKED!" and reset the vertical spacing to a standard 
12 dot line. Statement (40) shows us that we're back 
to normal. 

Table 3. illustrates the five spacing codes. 



OTARI 
CODE 

io~ " 

\2 

(3 n 
hH n 



TABLE 3 



DESCRIPTION 

Sets 9 dot vertical line 
Sets 7 dot vertical line 
Sets 12 dot vertical line 
Sets n/3 dot vertical line 
Sets n dot vertical line 



Why are there so many spacing codes? Well, the 
first three are intended as quick and easy spacing for 
normal text printing. The last two codes concern 
more specialized text printing, like underlining and 
graphics. 

Unfortunately, once you activate any of these 
spacing codes, except ec2, the printer forgets where 
the top of the form is. The form feed counts the 
number of whole lines, not dots. You could readjust 
for this by manipulating with fewer or greater dots in 
successive print statements. 

For example, in our illustration we use four 
LPRINT statements. But, it appears that we've only 
printed three lines. One of our LPRINT's is the 
underline. We are actually one whole hne, 12 dots, 
behind the form feed counter. To catch up we simply 
add one 24 dot line, hke this: 

58 LPRINT ■•%«■*" CA=CTRL XJ 

With this information in hand, EPSON printer 
users can write programs with much more efficient 
operation, not to mention the savings on keystrokes 
when entering programs. D 



NEW FOR A TARI from mmg micro software 



NOW — THE TWO MOST POWERFUL AIDS FOR ATARI BASIC!! 



\ A 




BASIC COMMANDER 



Single key entry file commands 

- ENTER "D: - SAVE "D: 

- UST"D: - RUN "D: 

- LOAD "D: 

Single Key DOS functions from BASIC 

- FORMAT a disk - LOCK a file 

- RENAME a file - UNLOCK a file 

- DELETE a file - DISK DIRECTORY 
THREE PROGRAMMABLE KEYS!! 

- sinqle keys programmed for your own use, even 
whole subroutines 

AUTONUMBER 

- automatically generates line numbers for you — 
speeds program entry 25-75"i. 

BLOCK DELETE 

- deletes any range of lines instantaneously! 
RENUMBER 

- renumbers lines and all references 

- extensive error trapping 

- 3 seconds to renumber 500 lines 




MMG BASIC DEBUGGER 



TRACE through your Basic program 

— Single step — TRACE while 

— TRACE UNTIL - change variables 

— LIST line numbers executed 

— examine variables' values 

Full screen BASIC editing 

— scroll up or down by cursor 

— edit your whole program easily 

— no more LIST line number ranges 
Split screen mode 

— view two parts of your BASIC program at once, 
and edit both! 

— scroll each window independently 
CROSS REFERENCE 

— provides a list of variables and the line numbers 
in which they are used in your program 

SEARCH FOR PHRASE 

— search your BASIC program for any phrase, 
command or string of characters; let your 
computer do the searching for you! 



EACH PRODUCT ALONE REQUIRES 16K, AND IS AVAILABLE ON DISK FOR ONLY $34.95 
Now, the convenience of both powerful utilities together in your Atari at once 
The Combined Basic Commander and MMG Basic Debugger requires 24K. $74.95 



ADDITIONAL PRODUCTS 



NECESSITIES 

RAM TEST II ■ The fastest and most thorough memory test available for the 
ATARI has now been further improved! Tests not only all locations, but also tests 
the memory addressing system. This all machine language program takes 4 
minutes to test 48K. It's the only program that tests the cartridge area of RAM. 
Good for new 400/800 computer owners, for testing new RAIVI boards and for use 
in computer stores to test and pinpoint bad memory locations. Bad memory 
locations are pinpointed so repair is as simple as replacing a chip! 

Requires 8K, Disk or Cassette $29.95 

DISK COMMANDER II - Just save this program on your BASIC disks and it will 
autoboat and automatically list all programs for the disk into your screen. Simply 
run any program by'.typing a single number. 

Requires 16K, Disk Only $29.95 

TUTORIALS 

ASTEROID MINERS - This 50 page book and program provides for a unique 
intermediate to advanced tutorial. A 32K BASIC game utilizing over 25 players in 
player-missle graphics, machine language subroutines, a redefined character set, 
multiprocessing utilizing the vertical blank interrupt interval, and much more! 
The 50 page book included with the program documents each pari of the entire 
program and contains the fully documented source code for both the BASIC and 
assembly language parts of the program. Use these routines in your own 
programs. These examples make it easy! 

Requires 32K, Disk or Cassette $34.95 

GAMES 

CHOMPER An all machine language arcade style game with intelligent 
monsters. Requires 16K Ram, 1 Joystick and nerves of steel. 

Available on Disk or Cassette $29.95 

BUSINESS/HOME 

MAILING LIST - Extremely fast BASIC and machine language program. Each 
data disk holds over 500 files. Sort on any of 6 fields at machine langugage speed 
or search on any fragment of a field! Use any size labels or envelopes. 

Require 40K, Disk Only $39.95 



NEW 



MMG DATA MANAGER - If you frequently find yourself looking for 
something, only to find it eventually right under your nose, then MMG DATA 
MANAGER is for you. Organize virtually anything into a computer-searchable 
format, and let your ATARI do the hunting for you. MMG DATA MANAGER is 
the first of a series of business applications from MMG MICRO SOFTWARE, all 
of which will share the ability to access files created by any of them. This flexible 
database manager will allow many fields, with machine language sorting, on any 
field. In addition, you have total control of the structure of your data, allowing you 
to design a database which you feel most comfortable. A special feature of MMG 
DATA MANAGER is its ability to select for a given value of any single field, or any 
combination of values from many fields. You could, for instance, determine who 
lived in Las Vegas, Nevada, and bought item #3145 from you, and whose last 
name began wilh SM, and whose telephone number began with (702) 873-4. You'll 
never lose track of information again! Multiple print options add to the versatility 
of MMG DATA MANAGER. 
Requires 40K, Disk Only $49.95 

Available At Your Favorite Computer Store 
OR Send a Check or Money Order to: 

MMG MICRO SOFTWARE 

P.O. Box 131 • Marlboro, NJ 07746 
OR CALL 

(201) 431-3472 

For MasterCard, Visa or COD Deliveries 

(Please Add $3.00 For Postage & Handling) 

NJ RESIDENTS ADD 5% FOR SALES TAX 

ATARI is a registered trademark of ATARL Inc. 



PAGE 64 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



A MASTER FILE DIRECTORY USING DMS 



16K disk 



by Marshall D. Abrams 



Introduction 

There are several good programs for creating and 
maintaining a master composite directory of all one's 
disk files. So why did I write another one? The 
answer is time and convenience. In all the existing 
programs which I tried, I found that the effort re- 
quired was trivial when the number of files was small 
and very time consuming when the number of files 
grew above a few hundred. I found that I didn't need 
a master file directory (MFD) when I had only a few 
disks, but when I got to over 40 sides, I started hav- 
ing trouble finding files. I had even more trouble 
keeping track (no pun intended) of multiple copies 
made for backup. When I modified the working 
copy of a file, I wanted to also change the backup if I 
could find it! 

This article describes a program, MAKEDIR, 
which creates and updates such a master directory. 
MAKEDIR gets you off to a fast start in creating a 
MFD. It also lets you update the MFD when you 
change which files are on which disk. The MFD is 
compatible with the Data Management System 
(DMS) which appeared in COMPUTE! November 
1981 and the improved ATARI Program Exchange 
(APX-20059) version. As described below, DMS 
may be used to sort, edit, and print the MFD. 

Design criteria 

MAKEDIR was designed to interface with DMS. 
It creates and edits a file named MASTRDIR.DB 
which is completely compatible with DMS. MASTR 
DIR.DB is also designed for listing on the TV screen 
and 40-column printers. Accordingly, the total col- 
umn count is restricted to 38. Fields are defined with 
an extra column so that they are separated and 
readable when directly copied to the screen or 
printer. If this feature is not important to you, but 
the limit of five columns to identify a file type is too 
confining, you may easily change the field widths. 

Getting Started 

Run DMS and create the database file MASTRDIR. 
The extension .DB will be automatically added by 
DMS. The following fields should be created: 

Name Width Editing 

1 FILE.EXT 13 none 

2 Sec 4 numeric 

3 Disk 7 none 

4 Date 7 numeric 

5 Type 5 none 



Several people who have gone through these steps 
have had the same problem with DMS. DMS is in- 
consistent in its inputs. Sometimes it wants you to 
type RETURN; at other times it does not. If you type 
RETURN when DMS doesn't want it, it doesn't read 
it when you type it. It reads the RETURN for the 
next command! Horrors! You have gone through 
much work to set up MASTRDIR, but it gets thrown 
away because there was a RETURN laying around 
waiting to be read when you wanted to type Y. Be 
sure to type a capital Y; lower case won't work. This 
is an easy mistake to make if you have been entering 
titles in mixed case. 

Running MAKEDIR 

The program MAKEDIR will read the directories 
of your disks and create the file MASTRDIR.DB. 
First, you will be asked for the date in YYMMDD 
format. No doubt this format looks strange, but 
there is a good reason for it. This format will sort 
correctly when treated as a character string, which is 
the way that DMS's sort works. It would also work if 
the format were YY-MM-DD, which is more read- 
able but takes more columns. To be more general, 
the format should be YYYYMMDD, but YY will 
correctly sort this century. 

MAKEDIR will attempt to read the disk id (see 
below for disk id format); if it fails, it will ask you to 
type in "diskid". The program assumes that all files 
on each disk are of the same type, or purpose, and 
asks you for this information. If you have organized 
your disks this way, with games on one disk and util- 
ities on another, MAKEDIR will save you lots of 
time. If a few files are of a different type, you can use 
DMS to change their types. Common types are 
GAME, GRAPH, WORDP, and UTIL. MAKEDIR 
will ask you to load new disks as necessary. When 
creating a new MASTRDIR, MAKEDIR fills up all 
of available memory before requesting that you load 
the disk onto which it will write MASTRDIR.DB. 
Generally you will be able to catalog all your disks 
before this. 

Recataloging a disk 

If you have made many additions or deletions to 
the files on a disk you may want to recatalog that disk 
using the Update command in MAKEDIR. After 
reading your disk, MAKEDIR will search MASTR 
DIR for all entries previously made for that disk and 
mark them as deleted. It will then append the new 
entries. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 65 



Adding non-directory files using DMS 

Many boot disks do not have directories. Some 
way is needed to make MFD entries for such disks. In 
addition, you may wish to make an entry for an 
AUTORUN.SYS that identifies the content of the 
file (GAMENAME.ATO, for example). One way to 
do this is with the DMS update command. If you run 
DMS and select the update option, you will be 
prompted into creating as many entries as you like. 
The editing tests will even prevent you from enter- 
ing alphas in numeric fields. 

Editing MASTRDIR 

Since MASTRDIR. DB is a text file, it can be 
edited with a text editor, such as the Program-Text 
Editor (APX-20075). Using an editor is often more 
convenient than DMS for a small change. Similarly, 
searching MASTRDIR. DB for a specific file may be 
done with the editor's search command. An alter- 
native way to add records to MASTRDIR. DB is to 
use an editor. In general, an editor will let you see a 
screenful of records, so it will be easy to create new 
records by lining up the fields above and below. 
Further, an editor lets you insert the new record any- 
where you want. For a few additions it is probably 
more convenient to insert that in the right place in a 
sorted list rather than have to resort after insertion. 

Disk Name 

MAKEDIR assumes that a file DISKNAME.TXT 
exists containing a single record in the format 

( . . .tide. . . diskid). 
Diskid may be any string, preceded by at least one 
blank and followed by a greater-than character. If 
MAKEDIR discovers that DISKNAME.TXT does 
not exist, if offers to write it for you. So even if you 
hadn't previously numbered your disks, you can 
number them at the same time that you catalog them. 
Since MAKEDIR is written in BASIC, it may easily 
be changed to work with other disk identifiers. 

Other Features 

MASTRDIR. DB records occupy 38 columns, 
making it very convenient to list them to the screen 
or a 40-column printer. From DOS, type C (for 
copy). Then specify 

MASTRDIR.DB,E: 
to have the MFD scroll on the screen. Typing CTRL 
+ 1 will stop and restart the scrolling at will. To print 
the MFD, type 

MASTRDIR.DB,P: 
To avoid multiple entries which would convey 
little information, MAKEDIR excludes files with ex- 
tension .SYS and MINIDOS. However, since each 
AUTORUN.SYS may have a different purpose, I 
manually enter progname.ATO (where progname is 
the name/purpose of the AUTORUN) in the 
directory. 

Program description 

Lines 10 to 90 set up the program variables and 
color the screen. I like to have a unique color iden- 



tifying each program or program type. Lines 100 to 
120 get the date. Lines 200 to 460 constitute the 
main menu. The disk type is input in lines 540 to 
588, with all 5 characters padded with blanks as 
necessary. If you want to allow more characters for 
type identification, change the count here as well as 
the DIM on line 30. The disk name is read and 
padded in lines 600 to 720. If one doesn't exist, lines 
800 to 860 allow you to identify the disk and to 
optionally write the DISKNAME.TXT file. Line 890 
pads the diskid to 6 characters if necessary. 

The disk directory is read in lines 900 to 1020 and 
written to the internal buffer, the record being ter- 
minated with an asterisk and an EOL. If the buffer is 
full, line 1060 sends us off to 1500 to empty it. If we 
are updating MASTRDIR by recataloging a disk, 
lines 1040 and 1100 to 1420 mark the previous 
entries for this disk for deletion by changing the 
asterisk to a D. The entire buffer contents are 
appended to MASTRDIR.DB in lines 1520 to 1580. 
If you ~have two disk drives, this section could be 
easily changed to eliminate diskette changing. 

Error checking is handled in lines 1560 to 1580, 
calling on a subroutine at 2200 to 2280. The menu at 
1600 to 1800 allows another copy of MASTRDIR to 
be written, another disk to be read, or program 
termination. D 



18 CLR :0FF=44444:0PEH ttS^ 4, 8, "K ; " 

28 COLOR l:5ETC0L0R 2,0,8 

39 DIM TMP$tlJ ,DISKII>5(63,FULHftHSt29) , 

FHfiMS (20> , TYPS (5} , REC5 (38) , DSKNflMJ (125 

) ,D0iTES(6I 

4© FULHflMS="Dl:"' 

50 5I2=FRE(I3-50:DIM BUFS (5IZJ 

70 GRAPHICS 18:P0SITIOM 4p3:PRINT tt6 ; " 



88 POSITIOM 1,5: PRINT tt6j"[a 

[JEB": POSITION 6j7:PRINT tt6j"U 628":F0R 

1=1 TO 488 .NEXT I 
98 GRAPHICS 0:COLOR llSETCOLOR 2,8,8 
188 PRINT : PRINT : PRINT "Enter date as 

YVMMDD ";:INPIJT DOTES 
128 IF LEN(DiftTES><>6 THEN 188 
288 PRINT ■'« Main Menu";^ 



3 to read 
Tj to upda 
1 to writ 



a new disk" 
ate this disk's ■' 
e directory to dis 



IPRINT "fl";:GET tt3,TMP:PRINT 



248 PRINT "O 

288 PRINT ' 

348 PRINT ' 

k." 

388 PRINT 

CHRSdMPJ 

488 IF TMP=82 THEN UPDflTE=8 : GOTO 548 
420 IF TMP=87 THEN 1588 
448 IF TMP=85 THEN llPDftTE=l : GOTO 548 
468 GOTO 288 

548 PRINT :PRINT "Enter 5 letter code 
identifying type":PRlNT "of files on t 
his disk "; :INPUT TYP5 

588 L::LEN(TVPS) :IF L<5 THEN FBR I=L+1 
TO 5:TYP5(I,IJ=" ":NEXT I 
599 REM Get disk id 



688 TRAP 8e8:FULNflMSt4J="l>ISKNflME.TKT" 
628 CLOSE «2:0PEH «2 , 4 , 0, FULNflM5 : INPUT 

tt2jll>5KNflMS: CLOSE tt2 
648 FOR I=LEN(DSKNfiMS) TO 1 STEP -1:IF 

D5KN0M$(I,IJ=">" THEN POP IGOTO 668 
660 NEKT I:GOTO 888 

688 K = I-l:FOR I = K TO K-6 STEP -1:IF l>5 
KNiaMS(I,I)=" " THEN POP :GOTO 728 
788 NEKT I:GOTO 888 
728 TRAP 80e:J=I+l:DISKIDS=0SKN0M5(J,K 



PAGE 66 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



) :TRftP OFF: GOTO 890 

733 REM No file DISKNftME . TKT- 



808 ERR=PEEKtl95) :IF ERROlTfl THEM 228 



818 TRftP 808 SPRINT " DISK ID";: INPUT D 

ISKU>S:THflP OFF 

828 PRINT "Do you want to write DI5KNA 

ME. TXT on this diSk-J :INPUT TMPSlIF LE 

NtTMP5)=8 THEN 898 

830 IF TMP$<>"Y" THEN 898 

840 PRINT "Text to identify disk":INPU 

T DSKNAM$ : FULNAN$ f 4J ="DI5KNftME . TXT" ; CL 

Q5E tt2:0PEN tt2,8,0,FULNaM$ 

868 PRINT tt2j"<";D5KNflMSj" "JDI5KIDS;" 

>•■: CLOSE tt2 

888 REM Make sure that DISKID is exact 
ly 6 characters 

898 L=LENtDI5KIDS) :IF L<6 THEM FOR I=L 
+1 TO 6:DISKIDS(I,I)=" ":NEXT I 

899 REM Read disk directory 

988 FULNflMS(4)="«.*":CL05E ttl:OPEN 111, 

6,0,FULNAMS 

928 INPUT ttl;FNaM$:IF LEN tFNflMSJ <17 TH 

EN 1840 

938 REM Don't catalog coHMon nanes 

948 IF FNftMS{ll,133="5YS" OR FN0M5C3,1 

OJ="DISKNAME" OR FNAM5 t3, 9) ="MINID05" 

THEN 928 

945 IF FNftM5C3,18J="ftUT0RUN" OR FHAM$ { 

3,183="DI5KNflME" THEN 920 

968 BUF$CLENtBUF$)41}=FNAM$(3,18} :BUFS 

CLEN f BUFS J +13 =" . " ; BUFS tLEH CBUFSJ +13 =FN 

ftMSCll,17J 

988 BUF${LEN«BUFSJ+1)=" " :BUFS CLEN tBUF 

S3+13rDI5KIDS 

1888 BUFSfLEHCBUF5j+13=" '• : BUF$ (LEN (BU 

F$3 +13 rDflTES CI, 63 : BUFS CLEN CBUFS3 +13 =" 

11 

1820 BUFSCLENtBUFS}+13=TVPSC1.53 :BUF5( 

LEN f BUF$3 +13 -'•*•' ; BUFS CLEM CBUFS3 +13 -CHR 

SC1553 :G0T0 928 

1840 IF UPDftTE-1 THEN 1180 

1860 IF LEMCBUFS3>0,8»5IZ THEM 1588 

1080 GOTO 200 

1100 PRINT "i^Load disk containing file 

"iPRINT "MftSTRDlR.DBj then pressHiHE 

H": INPUT IMPS 

1110 REM Update Mode to Mark deletions 
1128 TRAP 1400:CL0SE tt4:0PEN tt4,12,0," 
D : MftSTRDIR . DB" : F0UND=0 
1140 NOTE a4,SEC,BYTE:IHPUT tt4;REC5:IF 

RECSC18.2330DI5KIDS THEN 1140 
1168 RECSC37,373="D":F0UND=F0UND+1 
1180 POINT tt4,5EC,BVTE:PRINT «4;HEC$:G 
OTO 1148 

1480 GOSUB 2208.-0N ERR GOTO 1120,1188, 
1420:GOTO 2260 

1420 PRINT :PRINT FOUND:" old entries 
found for disk ";DI5KIDS : GOTO 1528 
1500 PRINT :PRIHT "Load disk containin 
g f ile" : PRINT "MA5TRDTR .DBj then press 

aiiniCl": INPUT TMP5 
1518 REM Append new catalog 
1520 TRAP 1568:CL05E tt4:0PEH tt4,9,8,"D 
:MA5TRDIR.DB":TRAP OFF 

1548 PRIMT tl4 ; BUFS; : CLOSE tt4:HI0 35,tt4 
,B,8,"D:MASTRDIR.DB":CL05E t1:4:G0T0 168 
8 

1560 GOSUB 2288: ON ERR GOTO 1520,1508, 
1580;GOTO 2260 

1580 PRINT "Unexpected EOF on update": 
END 

1600 PRINT "MASTRDIR.DB written" :PRIHT 
1610 REM What next? 

1620 PRINT "13 write another copy":PRlN 

T "d end prograM": PRINT "(3 read anothe 

r disk" 

1780 PRINT :PRIHT "fl";:GET tt3,TMP 

1720 IF TMP=82 THEN BUFS="":G0T0 540 

1748 IF TMP=65 THEN 1588 

1780 IF TMPr69 THEN END 

1888 GOTO 1680 

2200 ERR=PEEKC1953 

2220 IF ERR:=170 THEM ERR=2:RETURN 



2240 IF ERR=167 THEM PRINT "Unlocking 

MASTRDIR . DB" : XIO 36 ,»4 , 8 , 8 , "D : MASTRDIR 

.DB":ERR=l:RETURN 

2260 IF ERR=136 THEN ERR=3: RETURN 

2280 PRINT "Error ";ERR;" at line ";PE 

EK C186> +256*PEEK C187) 



(see D:CHECK 2, p. 26) 

18 DATA 276,583,954,342,18,967,226,915 

,932,527,42,178,983,915,625,8483 

400 DATA 798,825,817,709,142,715,591,9 

57,581,25,866,689,850,581,105,9251 

see DATA 951,983,51,229,567,168,481,47 

9,705,61,647,192,282,794,799,7229 

988 DATA 282, 734, 793, 187, 143, S7J, 494, 8 

90,469,523,438,185,361,894,267,7293 

1510 DATA 720,699,353,406,944,32,578,9 

45,798,557,16,146,726,489,718,8839 

2248 DATA 786,719,637,2142 



ATARI PROGRAMS 

FOR CASSETTE BASED SYSTEMS 

DEPROGRAM $49.95 

Duplicate Any Program Tape In Any Format 

(Saves Your Valuable Machine 
Language Programs) 
Provides the ability to recover 

data from damaged cassettes 
Automatic Memory Size Adjustment 
Boot Program 

SCREWDRIVER 400 $39.95 

Delete Line Numbers Hex Conversion 
Renumbers Decimal Conversion 

Memory Analysis Binary Conversion 

Change Margins (Runs Thru Basic) 

Machine Language To Data Statement 

6502 ASSEMBLER $24.95 

A 6K Basic Program That Translates 

Assembly Language Mnemonics Into 
Binary Code 
Great For Writing Machine Language 

Programs 
Interprets Machine Language Code And 

Converts To Mnemonic Format 



IS 



INTERFACE SYSTEMS. . . 

1650 WASHINGTON AVENUE 

CHARLOTTE NC 28216 

704-334-8155 

INCLUDE $1.50 FOR POSTAGE 

NC RESIDENTS ADD 4% SALES TAX 

ATARI, 400 ARE TRADEMARKS OF ATARI, INC. 




DATA PERFECT 

FOR THE ATARI 400 AND 800 COMPUTERS 



YOU MAKE THE COMPARISON 



D.P. 




GENERAL INFORMATION 

Cost of Program 

Cost of Utilities Program 

llncluded In Program! 
Cost of Reports Program 

(IncMeii In Progrsmj 
Compatible With Letter Perfect |tm| 
Word Processing 
Menu Driuan 

IVery User Friendlyl 
Complete Documentation 

(Manual Tabbed And Indexed! 
Single Load Program 

jNo Smpping Of Pwgmm DIskemi 
Machine Language 

lExtremely Fast Operation! 
Can Use Single Disk Drive 
Can Us Multiple Disk Drives 
Ability To Design Scraon Mask 

lUser 0»signs Arrangement Of Data) 
Full Keyboard Editing Available 

IDeleteltnsen A Character; So To End/Beg. 

of line: Fine X TAB, ETC.! 
Compatible With Bit 3 BO-Column Board 

140-Column anil 80-Column Version Availablel 
Works With Any Parallel Printer 

ISupports Atari 850 Interface! 
Totals Of Nomaric Field 

/flfitom Total And Average Value/Fleldl 
Fail Sales Provided For Data Protection 
Error Messages Displayed 
Status Lines For Ease of Use 

(Options Always Available For Beferencel 






SEARCHES AND EDITING 

Multiple Searches Allowed On Same Record 

ISearelt On 9 Criteria Per Record) 
Search On Two Criteria In Same Field 

lUp To 4 Fields In Single Record! 
Wild Card Searches 

I And/Or, Include, Cliaracter, Or Blockl 
Search On Basis Of Record Number 

ISeerch For An Individual Record! 
Search On Range Of Date Desired --ma^mmmmamiii:. 

IDates, Numbers, Values, Greater Or Loss Tttan, Eriual To, etc.! 
Ediung 01 Records Individually 
Editing Records Globally 

IVerification Allowed) 
Delete Records Individually 

IVerification Allowed! 
Qeleiing Records Globally 

IVerification Aflowed) 



$99.95 

soo.oo 

$00.00 
YES 
YES 

YES 
YES 
YES 

YES 
YES 
YES 

YES 

YES 

YES 

YES 

YES 
YES 
YES 




UTILITIES SECTION 

Add RbWs To Existing Data Base 

Delete Fields From Existing Data Base 
Reformat A Data Base 

ffiO/OC Format Of Existing Data Base) 
Make Additional Copies Of Data Base 

ICreate Data Base For Extended Records! 
Son on Multiple Criteria 

fSort On Basis Of 4 Fields fn A Sort! 
Sorts On Multiple Criteria 

lAssending Or Descending! 
Depth 01 Sort Can Be Changed 

IDesignate fJumbsr Of Charters OmpTo Sort! 
Merge Information From Other Data Bases 

//We/jre Standard Text Files! 
Add Or Delete Fields From Data Base 
Merge Previous Entered Data From Existing File 
Back Up A Data Base 

(Make A Back Up Of Current Source Data) 
Pack A Data Base 
IRemove Deleted Records From Disk Storage) 




YES 

YES 
YES 
YES 
YES 



YES 

YES 
YES 

YES 

YES 

YES 

YES 

YES 

YES 
YES 
YES 

YES 



FILE 

MANAGER 

••800" 




REPORT GENERATOR 

Design Report To User Specifications 
Level Breaks Allowed At Users Option 

lUp To 4 level Breaks Per Report! 
■ Designate Font To Be Used In Ropori 
Boldfacing Allowed In A Report 

IVl/itb Dot Matrix Printer! 
Mathematical Formulas Allowed In Report 

(Example, Field Y + Field 'y' - Field '/) 
Auto Page Number Allowed In Report 
Auto Date Entering Allowed In Report 
Repeating Characters Allowed 
Optional level Breaks 'and Page 
Breaks When Sort Values Change 
Up To 7 Lines Allowed For 

Header on Each Report 
Up To 2 Lines Allowed For Detail! 

Information On A Report 
Variable Spacing Allowed Between Data 

On Items In A Report 
Multiple Fields Allowed in A Report 

(Umber, Date, Alpha, Formula) 
Search Crilerian Allowed On Report 

(Same Criteria As In Editor) 
Ability To Have "Literal" Data 

Printed In A Report 
Ability To Have "Conditional" Data 

Printed In A Report 
Use A Default Date Field 
Designate Default Value For Specific Fielifi 



LABELS REPORT GENERATOR 

Mailing Labels Allowed 

(Specifically Designed For Labels) 
User Designs Data Placement On Label 

(One Across Label Design) 
Multiple Fields Allowed On Label 

lOate, Alpha, /tumeric, Formulai 
Repeating Characters Allowed 
Front Designation Allowed 
Print Labels On A Conditional Basis 
Search Criteria Valid On Label 

(Same Search Criteria As Editing) 



MATHEMATICAL ABILITIES 

Basic Math Calculation 

Addition, Substractjon, Multiplication, Division ' 
Built In Calculator lAutomaticI 

(Use In Editing, Or Adding Data) 
Find the Integer Value Of A 

Numeric Expression ,_____„™_«„ 
Find The Log Base 'e' Of Y 
Find The Log Base 10' Of' 
Find The Absolute Value Of'n 
Exponentantial Notation Used 
Find The Square Root Of'n' 
Formulas Allowed Between Fields „ 

(field X /+ - '/) Field y - Field r] 

[Field x /+-yyN - Field Y| 



SPECIFICS 

Maximum Number Of Fields Per Record 

Maximum Number Of Formulas In A File 
Maximum Length Of A Field 
Maximum Record Length 
Maximum Number Of Level Breaks 
Records Per Diskette 

(Depends On Length And Number Of Fields) 
Data Bases Allowed On Each Diskette 

ICan Be Expanded To Additional Diskettes) 
Form Letter Capability 

ICompatible With Letter Perfect) 



D.P. 



YES 

YES 

YES 

YES 







YES 

YES 

YES 

YES 
YES 
YES 
YES 



YES 

YES 

YES 

YES 
YES 
YES 
YES 
YES 
YES 



32 

16 

127 

511 

4 

" VAR. 



UNT 

YES 



'• "ic 



UK ENTERPRIES, INC. 



P.O. BOX 10827 

ST. LOUIS, MO. 63129 

[314] 846-6124 



Atari - A Trademark of Atari Inc., Full View 80 a Tiadc Mark of Bit 3 Computers, 
Fill Manager 800 A Trademaik of Synapse Software, Letter Perfect, Data 
Perfect A Trademark of UK Enterpries, Inc. 



PAGE 68 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



TRAPPING YOUR ATARI 



16K cassette or disk 



by Donald B. Wilcox 



It is often frustrating to be forced to restart a 
software program because an inadvertent error 
caused the program to crash. ATARI BASIC 
provides a special word — TRAP — that often can be 
used to prevent a program from ending before 
intended. Many errors are subject to automatic 
correction or compensation through a Uttle extra 
effort on the part of the programmer. 

If you are not yet familiar with the TRAP 
statement, the following example shows how to use 
it to detect INPUT errors. These occur when the user 
of a program types invalid numeric values into a 
numeric variable. 

10 INPUT X 

20 PRINT X 

30 GOTO 10 

In the above listing, typing a non-numeric 
response to the INPUT statement in line 10 (such as 
accidentally pressing return with no number 
entered) will result in an "ERROR-8 AT LINE 10" 
message. By adding a TRAP statement, this problem 
will be avoided completely. 

10 TRAP 10: INPUT X 

20 PRINT X 

30 GOTO 10 

In the slightly modified example above, if an input 
error occurs, the TRAP statement will catch the 
error and go back to line 10 to try the INPUT again. 

This short article presents some common errors 
that can be prevented with a few extra lines of code. 
After perusal of these five examples, you should be 
able to understand how to make your programs less 
vulnerable to errors that prematurely end your 
program. 

PROGRAM ONE - If you mistakenly create a new 
file using a file name that already exists, you will 
destroy the already existing file. No error message 
will warn you of the impending disaster. Program 
ONE will prevent this. 

PROGRAM TWO - If you try to OPEN a non- 
existent file, you will get error message — 170 and 
your program will crash. This can be prevented by 
using Program TWO. 

PROGRAM THREE - If you try to input data 
from a disk file beyond the end-of-file, you will get 
error message — 136 and your program will 
terminate. You may not always know beforehand 
where the file data ends, so an automatic end-of-file 
trap can be programmed easily to prevent error — 
136. Program THREE will solve this problem. 



PROGRAM FOUR - You forgot to turn on your 
printer or interface unit and get error message — 
138. If you attempt to use the CONTINUE 
command after you turn on the correct unit, your 
program will continue beginning at the line number 
that follows the line that caused the error. Often this 
can create erroneous results (not always detected) 
because the instructions on the line that caused the 
error may not have been executed correctly before 
the error. 

PROGRAM FIVE - You are reading in data with a 
READ statement and you do not want to use an end- 
of-data dummy value as a flag nor do you want to 
count the entries to determine when all the data has 
been read. Program FIVE demonstrates a simple 
method to prevent error #6 (out of data) from 
prematurely terminating your program. 

Finally, for those of you who are relatively new to 
ATARI BASIC, there are several locations 
(addresses) that you may PEEK to find out which 
error occured and which line caused the error. 
Location 195 contains the error number. Locations 
186 and 187 contain the line number where the error 
occured, low byte, high byte respectively. To display 
this information on your screen, use the following 
statements as one method. 

10 REM DISPLAY ERROR NUMBER 

20 REM OND LINE NUMBER OF ERROR 

30 ? PEEK (195);" AT LINE 'S-PEEK C186) +P 

EEKtl87)»256 

Happy trapping in your future programs. D 



PROGRAM 1 



100 ? "'H":CLR :REM CLEAR SCREEN AND VA 

RIABLE5 

110 REM PREVENT ERASURE OF PROGRAM ALR 

EADV STORED ON DISK 

120 DIM ATRAP$(e),ASC124),NAME5C8),FIL 

EStlO) 

130 REM SET UP DISK SUFFIX 'D:' FOR FI 

LE NAME. lOCB IS FILEtDEVICEJ NUMBER 

140 FILES="D : ■■ : I0CB=2 : IN=4 : GNU=8 

150 REM GNU=8 IS THE OUTPUT NODE 

160 SET=160: CLOSE ttlOCBzIF ATRAPS="5PR 

UNG" THEN PRINT " FILE NAME DID NOT PR 

EUIOUSLY EXIST": GOTO 200 

170 TRAP SET: PRINT "ENTER FILE NAME" 

180 INPUT NAME$:FILES(3)=NAME$:ATRAP$= 

"SPRUNG":0PEN ttlOCB, IN, 0, FILES 

190 PRINT FILE5;" ALREADY EXISTS":? "U 

SE A DIFFERENT NAME":CLOSE ttlOCBiGOTO 

170 

208 OPEN ttIOCB.GNU,e, FILES 

210 PRINT FILES;" OPENED SUCCESSFULLY" 

220 CLOSE ttlOCB 



NOT EVERYONE CAN TEACH THEIR ATARI™ NEWTRICKS... 




WE MAKE USING AND LEARNING ABOUT COMPUTERS FUN! 



PROGRAMMING GUIDE FOR BEGINNERS OR EXPERTS - MASTER 

MEMORY MAP.™ A 32 page book with hundreds of hints on how to use 
your computer. Over 500 memory locations! $6.95. 

LEARN SOUND AND GRAPHICS with our exciting lessons called 
TRICKY TUTORIALS.™ Each comes with atape ordiskfull of examples, 
and a 12 to 64 page manual written in an easy to understand manner. 
#1 DISPLAY LISTS — Put several graphics modes on your screen at 
once. #2 SCROLLING — Move text or graphics smoothly up, down, 
sideways, or diagonally. #3 PAGE FLIPPING — Change TV screens as 
quickly as flipping pages in a book. #4 BASICS OF ANIMATION — A 
beginner's lesson in animation using PLOT, PRINT, and a surprise 
game. #5 PLAYER MISSILE GRAPHICS - Learn the basics of writing 
your own arcade games. #6 SOUND & MUSIC — Simple methods to 
play complete songs, with graphics. Includes PLAYER PIANO free! #7 
DISK UTILITIES — 7 programs to help you use your disk drive. 32K. #8 
CHARACTER GRAPHICS — The best editor available with examples 
using special characters YOU CREATE and ANIMATE. #9 GTIA, 
GRAPHICS 9 to 11 — New tricks you can do with these 16 color modes. 
#10 SOUND EFFECTS — Many examples, from rainfall to laser blasts, 

4565 Cherryvale Ave., Soquel, Ca. 95073 



with ample explanation. #11 MEMORY MAP TUTORIAL - 3D colorful 

examples of tricks your computer can do. 

TUTORIALS 1 to 4 are $19.95 each. Numbers 5 to 11 are $29.95 each. 

16K Tape or 24K disk. SPECIAL: Tutorials 1 through 6 for $119.95. 

SAVE $20.00! 

WRITE FOR A CATALOG OR CALL FOR ORDERING INFORMATION 
VISA/MC/COD: (800) 692-9520 OR (408) 476-4901 

OUR GUARANTEE: Your money back if unsatisfiedl 



"AVAILABLE 
FROM DEALERS 
WORLDWIDE. 



Educational 
Software inc. 






DISKEY 



by Sparky Starks 

Potential into practical reality. This is the 
core of DISKEY — a remarkable utility program 
that gives ATARI disk drive owners the flexibility 
to accomplish tasks that other utilities either 
ignored or only hinted at. With DISKEY, the user 
w/ill be able to actually examine a disk and its 
directory, and repair some files that might 
otherwise have been lost. DISKEY also per- 
forms a multitude of other practical functions, 
including the following: 

• Automatically lists any unreadable or 
destroyed sectors 

* Sends contents of disk to printer selectively 

• Up to four separate drives may be addressed 

• Can be used to backup some of those "un- 
backupable" disks 

* Allows direct examination of any file 

* Over 50 separate key functions available 

As an ATARI 400 or 800 owner, you have ex- 
traordinary power and versatility at your 
disposal. Tap into those resources effectively 
with DISKEY — new from Adventure Interna- 
tional. 

ATARI 400/800 32K DISK 

052-0158 $49.95 

(Note: Some features will require 40K) 



SOME OF DISKEY KEY FUNCTIONS 

A Clear screen and filename 

B Byte compare, D1 to D2, OS to DS 

Copy sectors, OD to DD, OS to DS 

D Toggle destination drive 

E Erase disk (format) 

F Select file sut>menu 

L Set automatic function lower limit (OS) 

M Modify Sector f^ap 

N New destination sector 

Toggle originate drive 
P Print screen to printer 

Q Query (searcli for hex key, drive OD, sector OS 

to DS) 
R Read new OS, set DS to matcti 
8 Search for ASCII key, drive OD, sector OS to DS 
T Tape to disk 

U Upper case conversion of printer lower case 
V Toggle write verify 

W Write memory buffer to sector DS, drive DD 
X Select EOR Sector IVIap screen print mask 
Z Zero memory buffer 
+ Read upward, next sector on disk 
- Read downward 
? Directory information 

1 Select directory sub-menu 

cB Byte compare, 01 to D2, whole disk 

cC Copy D1 to D2, whole disk 

cD Decimal to hex, ASCII conversion 

cE Erase disk (without new format) 

cF f^lodify sector forward sector chain reference 

cH Hex to decimal, ASCII conversion 

cL Locate bad sector on drive OD 

cN Modify sector file number reference 

cO Select one-drive functions sub-program 

cP Print currant Disk Map 

cR HPM test drive 00 

cS Special file copy, no directory reference from 

source 
cV VTOC update and repair, drive 00 
cY Toggle Sure Response prompt enable 
FA File binary load address headers to printer 
FD Delete file 

FF Select filename for all file functions 
FL Lock file 

FM Show memory address load position In file 
FQ Relative Query 
FR Rename file 
FS Relative Search 




BASIC 

ROUTINES " # 
FOR THE ATARI 

Finally, a self-help system that cuts 
through the stuffy technical jargon and 
allows the user to learn effective 
programming techniques fast! BASIC 
ROUTINES FOR THE ATARI has been 
written especially for ATARI 400 or 800 
users who wish to write programs in 
BASIC. This package comes complete 
with an extensive manual and your 
choice of a tape or disk which contains 
all of the routines from the manual — 
which means you'll be able to actually 
see each of them in action on your 
ATARI. Some of the BASIC routines 
include joystick, sound, player missile 
strings and much more — and presented 
in a way that you'll quickly be able to 
learn and apply to your own programs. 

If your programming ability lies 
somewhere between beginning and 
advanced, then look no further — BASIC 
ROUTINES FOR THE ATARI is the 
system for you. 
BASIC ROUTINES book with 16K TAPE 

051 01 54 $24.95 
BASIC ROUTINES book with 24K DISK 

052-0154 $24.95 



Published 
by 

BOX 3435 



^-^. ■ ^—y,^ ® COPYRIGHT 1982 

(O {Am<^venture 

^ ^-C 5V^^^ INTERNATIONAL 

a subsidiary of Scott Adams, Inc. 

' LONGWOOD, FL 32750 • (305) 830-8194 



To order, see your local dealer. If he does not have the 

program, then call 
1 (800) 327-7172 (orders only please) or write for our free 

catalog. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 71 



PROGRAM 2 
i®S^K5JS7^1''^" = c'-R :hem clear screen an 

D VARIABLES 

119 DIM ATRAP$t6),NAMESC5J,FILESt8J 
128 REM SET UP DISK SUFFIX FOR FILE NA 
ME. lOCB IF THE FILEIDEVICE3 MUMBEH. 

m=4 IS THE INPUT MODE 
130 FILESr"D:":I0CB=2:IN=4 
140 REM i4RITE ERROR IF TRAP IS SPRUNG. 
IT IS GOOD PRACTICE TO CLOSE FILES T 
PREVENT ERROR ni23 IF YOU LOOP BACK 

159 REM TO A PREVIOUS PART OF VOUR PRO 
GRAM THAT OPENS A FILE. 

160 SET=169! CLOSE ItlOCB 

170 IF ATRAPS="SPRUNG" THEN ? "ERROR 1 
78, FILE "jFILES;" MON-EXISTANT" :FOR D 
=1 TO 1800:NEXT D:GOTO 100 
188 REM KEEPS MESSAGE ON SCREEN TEMPOR 
ARILV BEFORE RETURNING TO BEGINNING OF 

PROGRAM 
198 TRAP SET: PRINT "TYPE IN FILE NAME" 
rPRINT "DO NOT INCLUDE 'D:' PREFIX";IN 
PUT HAME5 

288 FILE$(3J=NAME5:REM CONCATENATES FI 
LE NAME ONTO DEVICE PREFIX 'D:' 
218 ATRAPS="SPRUHG" 
228 REM IF THE 'OPEN' STATEMENT WORKS, 

WE HAVE A VALID FILE NAME ALREADY STO 
RED ON DISK READY FOR INPUT 
238 OPEN ttI0CB,IN,8,FILE5 
240 PRINT "FILE "J FILES;" OPENED SUCCE 
SSFULLV" 
250 CLOSE ttlOCB 



PROGRAM 3 



108 PRINT "«":CLR :REM CLEAR SCREEN AN 

D VARIABLES 

118 REM CATCH END-OF-FILE ERROR 

128 DIM ATRAP$t6J,AStl243,NAME$C8J,FIL 

138 FILES="D : " : I0CB=2 : IN=4 : GNU=8 

148 REM -D:' IS FILE NAME PREFIX. IN= 

4 IS INPUT MODE. GHU=8 IS OUTPUT MODE 

. lOCB IS DEVICE fFILEJ NUMBER 

158 REM FIRST WE MUST CREATE A FILE AN 

D PUT SOME DATA IN IT BEFORE TRYING TO 

READ THE DATA. 
160 PRINT "ENTER A FILE NAME": PRINT "D 
NOT INCLUDE THE 'D:' PREFIX" 
178 INPUT NAMES:FILESt3)=NAMES:REM CON 
CATENATES PREFIX AND FILE NAME 
180 OPEN ttlOCB, GNU, 0, FILES 
198 REN WRITE DATA ONTO FILE. 
200 PRINT ttlOCBj "FIRST" 
218 PRINT ttlOCB; "SECOND" 
220 PRINT l«OCB;"LAST" 

238 CLOSE ttIOCB:REM IT IS GOOD PRACTIC 
E TO KEEP A FILE CLOSED WHEN NOT USED 
248 REM FAILURE TO PROPERLY CLOSE A FI 
LE CAN CAUSE IT TO BE LOST 
258 REM 

268 REM READY TO READ THE FILE 
270 OPEN ttlOCB, IN, 0, FILES 
288 SET=310:THAP SET 

290 REM READ DATA FROM FILE AND PRINT 
EACH VALUE AS IT IS READ 
380 INPUT ttlOCB, AS: PRINT AS: GOTO 298 
318 PRINT "FINISHED READING FILE SUCCE 
SSFULLV": CLOSE ttlOCB 

320 REM DELETE LINE 280 AND YOU MILL G 
ET AN ERROR MESSAGE 136 CEND OF FILEJ 



PROGRAM 4 



188 PRINT "H":CLR :REM CLEAR SCREEN AN 
D VARIABLES 

118 REN CATCH DEVICE TIMEOUT ERROR tt 1 
38 

128 REM YOU FORGOT TO TURN ON AN INPUT 
OR OUTPUT DEVICE 



138 DIM ATRAPSC6) 

140 SET=148:1F ATRAPS="CAUGHT" THEN PR 

IMT "TURN ON I/O DEVICE" 

150 TRAP SET:ATRAPSr"CAUGHT" 

168 {-PRINT "PROGRAM RAN SUCCESSFULLY" 



PROGRAM 5 



:CLR :REM CLEAR SCREEN AN 



100 PRINT "«■ 

VARIABLES 

118 REM READ DATA AND TRAP OUT-OF-DATA 

ERROR t*6 
iS2 5ET=140:TRAP SET: REM DELETE THIS L 
INE AND ERROR tt6 MILL OCCUR 
138 READ N:PRINT N:GOTO 130 
140 PRINT "FINISHED READING DATA" 
158 DATA 20,4,156,83,12 




ABOUT THE COVER. . . 

Yes, there really was someone in that suit of armor, and that someone 
was none other than editor Mike DesChenes, revealed here for the first 
time. The suit of armor he was wearing was a replica, but the suit in the 
background is an original — German ceremonial armor for a young man, 
fashioned after combat armor, circa 1540-1550. The armor was 
provided by the Higgins Armory Museum. The Higgins Armory 
Museum houses the largest collection of medieval armor, tapestries and 
weaponry in the entire Western Hemisphere, and the Museum was kind 
enough to let us photograph our cover there. Unlike our last five covers, 
there were no double-exposed elements in the shot — only colored gels 
over the lights were used. 

We invite all of our readers in the New England area to visit the 
Higgins Armory Museum, located at ICO Barber Avenue, Worcester 
MA 01606. Phone (617) 853-6015. The Museum is open Tuesday 
through Friday 9 a.m. to 5 p.m.; weekends and holidays 12 to 5 p.m. The 
Museum is located just off 1-90 and West Boylston Street at the corner of 
Barber Avenue and Randolph Road. Please visit the Higgins Armory 
Museum — we guarantee you a fascinating experience. 



w wp.C'^ ir,gf%mf mf #. WW3. wm 
\&M ^k '^m M.: M^ i>:'H 1.''^ tiiik &■ issm ^^ 



This advertisement has no 
headline! 

Mere words fail to convey 
the excitement that is truly 
LEGIONNAIRE. 

Designed & Programmed by Chris Crawford for Avalon Hill 



LEGIONNAIRE is a real 
time game of combat between 
the Roman Legions of Juilus 
Caesar (you) and the Gaulish 
barbarian hordes (the 
computer). High resolution 
scrolling graphics and sound 
brings you the live action. You 
have up to ten legions to 
command, each with different 
strengths and weaknesses, and 
a choice of any two of sixteen 
different barbarian tribes to 
fight. As Caesar did two 
thousand years ago, you must 
meet the Gauls and defeat 
them. They outnumber you at 
least two to one, so you must 
use the terrain and the 
disorganization of the 
barbarians to counter your 
disadvantage in numbers. 
Above all, you must be able to 
react quickly to the changing 
battlefield situation, or the 




battle depicted above could 
happen to you! Caesar 
managed to conquer all of 
Gaul -can you do as well, or 
will the barbarian hordes 
defeat your legions? 

LEGIONNAIRE is ready to 
run on your Atari® 400 or 800 
with 16K cassette or 32K 
diskette and one joystick. 



Available at finer computer 
and hobby stores everywhere. To 
order by phone, dial TOLL FREE: 

1-800-638-9292 
and ask for Operator A, or write: 
Avalon Hill Microcomputer Games, 
Dept. 81, 4517 Harford Road, 
Baltimore, MD 21214. Please add 
10% for postage and handling. 

^Trademark of Warner Coniniunications 






Witti Cassette For: 


Witli Diskette For: 


PRICE 


SOFTWARE 
GAMES 


rns-BO 
Color 


TRS-SO 
Models 
1 A III 


ftPPLE 
11 + 


PET 
C8M 
2001 


ATARI 
400/ 
800 


TRsao 
Models 

1 am 


APPLE 
11 + 


ATARI 
400/ 
800 


IBM 
PC, 


Legionnaire 










16K 










35.00 
















32K 




40.00 


V.C, 


16K 


16K 


32K 




32K 










20,00 












32K 


48K 


40K 




26.00 


D.F.S. 
Sorceress 




48K 


48K 




48K 










30,00 












48K 


48K 


40K 




35.00 


Andromeda 
Conquest 




16K 


16K 


16K 


32K 










18,00 












32K 


4eK 


40K 


48K 


23.00 


Moon Patrol 










16K 










25.00 






















Teiengard 




4eK 


48K 


32K 


48K 










23.00 












48K 


48K 


48K 




26.00 


Draw Pol(er 




16K 


48K 


8K 


16K 










16,00 














48K 




48K 


21,00 


Voyager 


16K 


16K 


32K 


32K 


24 K 










20.00 














48K 


32K 


48K 


25.00 



microcomputer games* 

I A Division of the Avalon Hill Game Company 
QUALITY 4517 Harford Rood • Baltimore, MD 21214 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 73 



MOVING PLAYERS IN BASIC 



16K cassette or disk 



by Tom Hudson 



Just before issue #9 of A.N.A.L.O.G. went to 
press, I was handed a letter from Long Mai of Salt 
Lake City, Utah (see the Reader Comment section of 
this issue). Like many BASIC programmers, he was 
frustrated by BASIC'S snail-like pace, and asked for 
a machine-language subroutine that could be used 
with BASIC to move player-missile graphics around 
on the screen. 

Unfortunately, it was too late to write such an 
article for issue #9, but here it is, along with fully 
documented assembly-language code. 

THE PROBLEM 

Player-missile graphics are one of the most 
powerful graphic features of the ATARI 400/800 
computer systems. Unlike traditional graphics, 
players and missiles can be moved around on the 
screen without disturbing the existing display. 

In order to use players and missiles, one must first 
reserve a portion of memory. Once this is done, the 
user can begin designing and displaying the players 
and missiles. 

The problems begin when the user wants to move 
a player or missile around on the screen. Horizontal 
movement is done easily. A POKE to the appropriate 
horizontal position memory location will move the 
desired player to any horizontal location on the 
screen. If the user wants to move a player or missile 
vertically, he or she must copy the P/M bit image to 
another location in memory. BASIC is too slow to 
do this, but it can call a machine-language subroutine 
to do the "dirty work." 

THE PROGRAM 

The BASIC program listed here will allow the user 
to move any player around on the screen. It calls the 
P/M movement subroutine, shown in the Assembly 
language listing. 

As listed, the program will move a shape around 
on the screen at random. The shape of the player is 
stored as a series of bytes in the string "P0$". By 
altering the data in line 420, you can change the 
shape that appears on the screen. There are currently 
7 bytes in line 420, but this can be changed by 
altering lines 130, 290 and 420. 

Lines 110-180 set up the subroutine and turn on 
the P/M graphics. Lines 220-310 are for 
demonstration purposes only. You can put your 
program code in this section. 

Line 110 -Loads the string PMMOV$ with the 



P/M movement subroutine. 

Line 130 - Places the data that defines the graphics 
shape into the string P0$. 

Line 140 - Tell the system where the P/M memory 
starts. 

Line 150 -Saves the P/M base address. 

Line 160 -Saves the graphics data string address. 

Line 170 -Turns on P/M direct memory access. 

Line 180 - Sets the color of player to light blue. 

Line 220 - Initialize the X and Y coordinates of the 
player. 

Line 230-280- Alter the X and Y coordinates to 
move the player. 

Line 290 -This USR call moves the player to the 
desired X and Y location. This statement has 7 
parameters inside the USR parentheses: 

fl=UrjR(M0UE,e,PMB,PMD,K,Y,7) 

"MOVE" is set up in line 110. Do not change this 
variable. It is the address of the P/M mover 
subroutine. 

"0" means that we want to move player zero. This 
value can range from to 3, moving players 
through 3. 

"PMB" is the P/M base address. Do not change 
this value. 

"PMD" is the address of the string that holds the 
player image data. This should be set to the address 
of the string you are using to hold your player shape 
data. If your player shape data is in a string called 
"PL$," you could replace "PMD" with 
"ADR(PL$)". 

An "X" and "Y" are the horizontal and vertical 
coordinates when you want to place your player. X 
ranges from 0-255, and Y ranges from 0-127. 

"7" in this case indicates that our player is 7 bytes 
long (see line 130 and the player image data in line 
420). If your player is 10 bytes long, place a "10" 
here. 

SUMMARY 

This program should help out anyone who wants 
to use player-missile graphics from BASIC. If there 
are any questions, write me care of A.N.A.L.O.G. 
(please include a pre -addressed, stamped envelope). 
If there is a specific application you would like to see 
appear in a future issue, just ask. You never know — 
there may be hundreds of other readers who would 
like the same information. D 



PAGE 74 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



PROGRAM 1 



10 REM MMMKMKKKKMKMKICKMKXKICKMMKMICKKK 
29 REM # P/M MOVER SUBROUTINE DEMO * 
SO REM * * 

40 REM « BY TOM HUDSON # 

Se REM « M 

68 REM * A.N.A.L.O.G. COMPUTING » 
70 REM KKKKKKKICICKKXMMMMKKKMMMXKKMKXK 
80 REM 
90 REM KMKMKKKMMICK SETUP MMKMKKICICKKM 

lee REN 

118 DIM PMM0U$(10e} ,Pe$f3e) :MOUE=aDRCP 
MM0UI$3:F0R K = l TO 188: READ N:PMM0U$CM} 
=CHRSCN) :NEXT K : REM «READ ML DATA* 
120 REM «*» NOM READ SHAPE DATA *** 
138 FOR X=l TO 7:READ N:P8$ CK)=CHR$ (N) 

i48 PMBASE=IHT C tPEEK (145) +35 /4) «4 : POKE 
54275, PMBA5E:REM »*» SET UP P/M AREA 

158 PMB=PMBASE*256 

168 PMD=ADRCP8$) :REM *** P/M DATA ADDR 

ESS «»* 

178 POKE 559,46:P0KE 53277, 3:REM *** P 

/M DMA *»» 

188 POKE 784, 136: REM *** PLAYER COLO 

R *iHt 

190 REM 

288 REM iHBHe YBUR PROGRAM HERE! WBHf 

210 REM 

228 K=128:V=64 

230 XI = l-INTtRNDt83«33 : YI = 1-INT (RND t85 

K3) 

240 X=K+KI:Y=V+YI 

258 IF X<58 THEN X=58:G0T0 278 

260 IF X>190 THEN X=190 

278 IF Y<28 THEN Y=28:G0T0 290 

280 IF Y>118 THEN Y=H8 

298 A=USRCM0gE,8,PMB,PMD,X,Y,7) 

380 IF RNDC0J>O.95 THEN 230 

318 GOTO 248 

320 REM 

330 REM WHf PM MOVER DATA «H* 

340 REM 

358 DATA 216,184,184,184,133,213,184,2 

4,105,2,133,206,184,133,205,104,133,28 

4,104,133,203,184,104,133,288 

368 DATA 184,184,133,289,184,184,24,10 

1,209,133,207,166,213,240,16,165,205,2 

4,185,128,133,205,165,286,185 

378 DATA 0,133,286,282,288,240,168,0,1 

62,8,196,289,144,19,196,287,176,15,132 

,212,138,168,177,283,164 

388 DATA 212,145,285,232,169,8,240,4,1 

69,0,145,285,200,192,128,288,224,166,2 

13,165,208,157,0,208,96 

398 REM 

480 REM «** PLAYER IMAGE DATA *** 

410 REM 

420 DATA 255,129,129,231,129,129,255 



(see D:CHECK 2, p. 26) 

iS S^TA 532,930,996,64,8,483,544,265,9 

89,74,765,328,743,901,536,8870 

160 DATA 729,778,445,101,552,79,854,96 

8,479,928,983,921,954,424,374,9561 

318 DATA 704,84,588,90,639,732,435,188 

,185,191,83,56,3887 



ASSEMBLY LANGUAGE LISTING 



YP03 = $D1 
HOLD = $04 
PLNUM = $D5 



iY POSITION 
;HOLD AREA 
;PLAYER « TO M(WE 



iPERATING SYSTEM EQUATES 



HPID3P8 = $0009 



; PROGRAM ST«!T3 HERE' 



START 



jHORIZ. pmiim 



PLCALC 



EhBCAL 
CIFYLP 



ZERO 
NEXT 



;PA6E ZERO USAGE 



mm = $CB 

PLADR = ICD 

PMEND = $CF 

XPOS = $D8 



;P/M BASIC STRING 
i PLAYER ADDRESS 
•PLAYER IMAGE END 
;X POSlTIft'J 



ORG um 


iWY ADDRESS 


CLD 


jCLEAR DECIWL MODE 


PLA 


;DISi:y!RO 


PLA 


; DISCARD # HI 


PLA 


;PULL PLAYER « LO 


STA PLNUM 


•AND SAI;E IT' 


PLA 


iPULL P/M BASE HI 


CLC 


;ADD OFFSET TO GET 


ADC n 


;PLAYER MEMORY ADDR 


STA PLADR+1 


!*WD SAi;E' 


PLA 


;PULL P/N BASE LO 


STA PLADR 


iAND SVJE' 


PLA 


■PULL STRING HI 


STA PMSTRtl 


jAND a¥JE' 


PLA 


;PI3LL ST^IHG LO 


STA PMSTR 


jAND Sfil4V. 


PLA 


iDISMRD X HI 


PLA 


jPULL X LO 


STA XPOS 


;(WD SAl.'E IT! 


PLA 


; DISCARD Y HI 


PLA 


IPULL Y LO 


STA YPOS 


;AND SAfJE IT' 


PLA 


jDISCARD LEhMH HI 


PLA 


jPULL LENGTH LO 


CLC 


lADD Y POSITION 


ADC YPOS 


;T0 6ET END 


STA PMEND 


■,m\) :3AUE IT' 


LDX PLNlll 


;GET PWYER« 


BEQ fflDCAL 


;N0 INDEX NEEDED! 


LDA PLADR 


;ADD 120 TO 


CLC 


i PLAYER 


ADC #128 


;ADDRESS 


STA PLADR 


;T0 


LDA PLADR+1 


;P01NT TO 


ADC #e 


;NEXT 


STA PLADR+1 


i PLAYER. 


DEX 


ANOTHER ADJUSTMENT? 


BNE PLCALC 


YES' 


LDY m 


ZERO P,^ COIM 


LDX #8 


,ZERO STRING COUNT 


CPY YPOS 


COPYING DATA YET-? 


BCC ZERO 


NO! 


CPY PMEND 


FINISHED COPYING? 


BCS ZERO 


YES' 


STY HOLD 


3AUE Y REG 


TXA 


MffJEX REG... 


TAY 


TO Y REGISTER 


LDA (PMSTR) ,Y ; 


GET P/T1 BYTE 


LDY HOLD ; 


GET P/M (FFSET 


STA ( PLADR) ,Y : 


CHANGE PLAYER! 


INX' 


NE>fT STRING BYTE. 


LDA 18 ; 


FORCE BRANCH 


BEQ NEXT ; 


TO ^Ci<T BYTE! 


LIM «e 


ZERO OUT... 


STA (PLADR) ,Y 


PLAYER BYTE! 


IWY \ 


NEXT P.'M BYTE 


CPY #123 : 


DCJ€ U/COPY? 


BNE COPYLP 


NOT DONE YET! 


LDX PLNIH ; 


GET PLAYER # 


LDA XPOS 


NOU JUST SET 


STA HP0SP8,X : 


X LOCATION! 


in-s 


FINIS' 



.END 




FIRST BORN IN 1978! 



the original & continuously updated 



CCA 
Data Management 

System 



NowAvailableForAtariComputers $ 99.50 

For Apple Computers 150.00 

For CPM Based Computers 225.00 

CCA Data Management System 
Uses Features And Capabilities 



MEMORY 

For ATARI® 400/800 

INTRODUCTORY OFFER 



' Business 

Accounts Receivable 

Accounts Payable 

Inventories 

Billing 

Lists and Rosters 
• Honne Phone Lists 

Budgets, Hobbies 



• Long record lengths 

• Up to 24 fields per record 

• Not Copy Guarded 

• Alpha numeric items 

• Numeric only items 

• Add, update, scan, etc. files 

• 10-Level sort ascending, descending, 
allows alphabetizing data file. 

• Contact your local dealer for 
details or v^/rite us for our catalog 




I 



DIVISION OF CUSTOM ELECTRONICS. INC. 

SOFTNA/ARE 

23B Exchange St., Chicoptw. MastacHusettt 01013 

(413) 592-4761 

Mattercord & VtSA Accepted 

* Dealer And Distributor Inquiries Invited 

Cloud Mondays — Open Daily 'Til 5:30 — Fridays 'Tit 8 



Size 



Board 
Only 



Kit 



Assembled 
+ Tested 



16K 
32K 



$19.95 
$29.95 



$49.95 
$79.95 



$54.95 
$84.95 



LIFETIME WARRANTY 
GOLD PLATED CONTACTS 

BONTEK 

MPO Box 547 

Niagara Falls, IMY 14302 

Call: (416) 245-9758 

Add $5 Shipping, Insurance, Handling 



\A/HY PAY MORE? 

FOR ENTERTAINING SOFTWARE FOR YOUR ATARI 400/800* 

I 



ALl SOFTWARE AT LEAST 20% OFF RETAIL PRICES-AILTHETIME! 30-40% OFF ON SPECIAL SALE SOFTWARE! 

I 

■ 

MORE THAN 100 DIFFERENT GAMES. SIMULATIONS, PUZZLES, & ADVENTURES FROM ARTWORX, ADVENTURE INTERNATIONAL. 
EPYX, AVALON HILL, ONLINE. DATASOFT. ARCADE PLUS. IDSI, GEBELLI & MORE! 

I 

■ 

FREE CATALOG FREE NEWSLETTER FREE SHIPPING ON ORDERS OVER $150 FREE MASTERCARD AND VISA USE ■ MOST 
ORDERS SHIPPED SAME DAY RECEIVED OR NEXT DAY ONLY $2.00 SHIPPING AND HANDLING PER ORDER 

BOX S47 IME\A/ FLOREIMCE, PA 15344 

(4nSlS35-SS7a 




PA residents add 6% sales tax 
*trademarkof Atari Inc. 




Diggerbonk! contains 
the following ingre- 
dients: Orange 
Whirlers, Pulsing 
Greenies, Twinklers, 
Bombs, Fog, Purple 
Gurples, Yellow 
Blinkers, Aqua 
Chasers (watch out), 
and of course the 
PANIC BUTTON. 



,OV/.NCEOABCAOEGA*«E 




GUESS IVHAT'^ 

COMING TO I 
DINNER 7 



For those of you who always 
wanted a pet snake, this game 
is for you. What do you feed 
a guest like this? An ample 
supply of insects, of course, 
but be aware that snakes often 
wind up biting themselves or 
getting electrocuted on their 
cage walls if not properly 
trained. Difficulty levels for all 
ages. $24.95. 



Prototype the Robot needs the 
help of your child, 4 or older. His 
busy day includes catching mar- 
shmallows being dropped by 
friendly Aliens, Coloring pic- 
tures, and Playing tunes on his 
piano. $24.95 




ONLY $29.95 



Diggerbonk! is the first arcade style game with a continuously scroll- 
ing maze that never repeats. You must guide your Digger upward before 
it goes off the bottom of your screen. There are, however, a few pro- 
blems you must BONK! along the way (see ingredients). To add to 
the complication, you need to BONK! the creatures in a specific order. 
Playable by all ages, but be prepared to end up with a NEGATIVE 
SCORE. 




PROGRAM 
EXCHANGE 

EDUCATIONAL SOFTVWRE inc. 



AVAILABLE FROM DEALERS WORLDWIDE. 

WRITE FOR A CATALOG OR CALL FOR ORDERING INFORMATION 

VISA/MC/COD: (800) 692-9520 OR (408) 476-4901 

4565 Cherry vale Ave., Soquel, Ca. 95073 



Do you like to challenge your 
mental powers? Try to solve this 
color matching puzzle in less 
than 11 moves. Play it against 
the computer or a human. Easy 
you say? SURE $16.95 



AT SSI, WE GROW MORE THAN APPLES. 




INTRODUCING SOME NEW FRUITS OF 
OUR LABOR... FOR THE ATARI! 




At SSI. we cultivated our fine reputation 
In the computer gaming world by produc- 
ing some of the best Apple® games around. 
But to paraphrase an old saying, "Man 
does not live by Apples alone." 

So we bent our backs to the task of con- 
vert ing some of our Apple crops to the 
ATARI® 400/800. The three games you see 
above are the new fruits of our labor. 

As part of our exciting RapldFlre series, 
they contain all the ingredients needed to 
make the perfect strategy simulations for 
your Atari. Rooted in popular science- 
fiction and fantasy themes, they are 
thallenging and sophisticated - yet fast 
and full of fun! 

Best of all. they're ripe for the picking at 
your local computer/game store today! 




■ CYTRON MASTERS" puts you in chaiige of a 
.small army of Cybernetic Electronic Devices. 
Your forces consist of laser-blasting shooter 
units, kamikaze-like mine cytrons, mobile 
bunker cytrons, guided missiles and anti- 
mls.slle.s. Use these mindless but deadly 
machines to crush your hapless foes, and you 
will someday become a...Cytron Master \ 

On 48K disc for *39.95: 32K cassette for *34.95. 

■ GALACTIC GLAmATORS" takes you to a 
remote comer of ourvasi universe lo participate 
in a wild and crazy cosmic shootout. We' re talk- 
ing about four-armed Froglodytes with phasor 
ritles, Vlklng-like Wodanltes wielding laser 
swords, and ugly Mutants whose only socially 
redeeming feature is their Death Touch. And 
theseare the nice folks! On 48Kdisc for»39.95. 

*ATARI Is a registered trademark of Atari Inc. 




■ THE COSMIC BALANCE" Is a tactical space 
game that not only lets you wage magnificent 
starshlp battles, it gives you the chance to 
design and build your ships from the ground 
up! With a host of variable parameters to choose 
from, you can equip your fleet with ships optimal- 
ly designed to suityourstyle of space warfare. On 
48K disk for »39.95. 

Commg soon - COSMIC BALANCE II - the 
strategic-level adjunct to The Cosmic Balance. 



If there are no convenient stores near you, 
VISA and M/C holders can orderdlrect by calling 
800-227-161 7. x335 (tollfreej. In California, call 
800-772-3545, x335. 

To order by mall, send your check to: Strategic 
Simulations Inc. 465 Fah-chlld Drive, Suite 108. 
Mountain View. CA 94043. California residents, 
add 6Vi% sales tax. 



WRITE FOR A FREE COLOR CATALOG OF ALL OUR ATARI GAMES TODAYI 




■■(llIJLHLmCntfaKtRliL'wsEVi 



movie monster. You! As any of six 
different monsters. More if you 
have tfie disl< version. 

You can terrorize and destroy 
four of the world's largest and 
most densely populated cities in 
over 100 possible scenarios. 
From Tokyo to the Golden Gate, 
you are the deadliest creature in 
the air, on the land, or in the sea. 

You can be the deadly am- 
phibian who simultaneously 
smashes street cars, lunches on 
helpless humans and radiates a 
ray of death. 

If you were a giant winged 
creature, think of the aerial 
attacks you could make on the 
terrified but tasty tidbits beneath 
you. 

But as in all the best monster 
movies, you're up against every^ 
thing the human race can throw 
at you— even nuclear warheads 
and a strange concoction devel- 
oped by a team of mad scientists. 

For only $29.95 you get 6 stu- 
pendous monsters, each with its 
own monstrous summary card, 
4 teeming metropoli displayed in 
graphic detail on your computer 
display and mapped in the 
accompanying 48-page illustrat- 
ed book, the awesome sounds of 
monsterly mayhem, and spine- 
tingling, real-time, edge-of-your- 
seat excitement. 



-^^HBpiii^T 


1 .. S. ' ' 


/ 




M «^ J 


-^■: 


fij 


■~«_ ''"'^•**«saB'«i.«. 



GET CRUSH, CRUMBLE & CHOMP 

now at your local dealer for your APPLE, ATARI, 
or TRS-80 . . before its too late. 



^ji 



§^i« 



©1981, Automated Simulations, Inc., 1043 Kiel Court, Sunnyvale, CA 94086 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 79 



The 

HqIIsoF 

the Leprechaun King 



16K cassette 24K disk 



by Keith Evans and Ted Adkinson 

Alas! The Leprechaun King has awakened from 
his long slumber, and he has taken all of the world's 
gold. Every nation is bankrupt. The world's only 
chance is Smiley, the famous gold miner. With his 
dexterity and wit Smiley just might be able to re- 
capture all of the gold, pick up the magic key, and 
put the gold in a sanctuary. But unless he's careful, 
the Leprechaun King will give him the Midas touch, 
turning him intc:) a 24-carat gold tombstone. 

The halls of the Leprechaun King is a maze-type 
game which runs on an ATARI 400 or 800 with a 
minimum of 16K (Cassette based) or 24K (Disk 
based) and one joystick. When the game begins take 
some time to notice where everything is positioned. 
Smiley is in the upper middle of the screen and the 
Leprechaun King is in the upper right hand corner. 
Throughout the maze there are pots of gold. To 
collect one, just touch it. If you look in the lower 
right corner, you will see the key surrounded by 
walls. Collect about half of the gold and the key will 
move to the center of the maze. After Smiley gets the 
key and all of the gold, he goes to the sanctuary 
chamber at the far lower right corner directly to the 
left of the cross. Push the trigger button and a section 
of the wall will disappear. This is the entrance to the 
sanctuary where Smiley has to store the gold. 
Deposit gold by simply touching the cross. 

Some other important parts of this game are gold 
tombstones. When Smiley loses a life, a tombstone 
appears as a resting place for all of the gold he was 
carrying. A new Smiley has to touch the tombstone 
to collect the gold that the old Smiley was carrying. 

In this game, you start with three lives. The game is 
over when you use them all up. To see how many 
lives you have left, look in the upper right or left 
hand corner of the screen where vertical bars 
indicate lives remaining (including the one currently 
in use.) 

An expert player might get to the third maze and 
find it is totally different. Two clues about this maze 
three: the key appears in the lower middle of the 
screen, and the section of disappearing wall lies 
directly below the cross. D 




Here is the dc:)cumentation of the program. 
Line # Description 

1-10 Variable Initialization, title 

120-372 Character set redefinition 
395-507 Maze drawing, placing of the gold 
510-624 Joystick reading, movement of Smiley 
630-999 The Leprechaun's logic 
1000-1120 Maze and character set data 
1150-1154 Men left indicator 
1500-1510 "Midas Touch" sound effects 
2000-2020 Counts bags of gold taken, places key in 

the maze if enough has been taken 
2500 Draws tombstone, checks men left 

2510-2570 Erases Smiley's trail 
2575 Start's game over when all men are used 

up 
2610-2700 Puts the gold Smiley was carrying in a 

tombstone when he is killed 
3000-3050 Subroutine to flash maze 
4000-4350 Actually moves monster 
5000 Plays "Oh, when the saints. . .", clears 

screen 
6000-6007 Displays score at end of game 
6010 Clears screen 

7000-8030 Data for "Oh, when the saints. . ." 
9000-9130 Subroutine to play "Oh, when the 

saints. . . " 
9150-9260 Plays "Good night, ladies. . ." 
9270-9290 Data for "Good night, ladies. . ." 
9300 Sound effects of gold being cashed in 

10000- Color rotation subroutine 

10020 



1 CLR :X=ie:V=l:MX=17:MY=2:Xl=19:Ylrl 

5 GRAPHICS 2+16:? tt6j" " : ? ttBj" " 

6 ? «6;" THE HALLS OF THE":? »6;" L 
EPRECHAN KIHG":? ttBj" '■ 

7 ? tt6;" created":? »6;" " 

8 ? tt6;" b y"; ? »6 ;" " 

'ns^'" Goiff«^ " = '"'' ' 

10 FOR ZZZ=1 TO 20:G0SUB 10600: NEXT ZZ 

Z 

120 POKE 106,PEEKtl06J-2 

130 GRAPHICS 1+lB 

150 A=PEEKC106J»256 



PAGE 80 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



190 5ET=PEEKfl0BJ 
200 POKE 756, SET 
228 FOR C=0 TO 7 
230 POKE ft+C,0 
240 NEKT C 
250 FOR C=8 TO 63 
260 READ CHAR 
270 POKE A*C,CHAR 
280 HEKT C 

369 FOR C-64 TO 71:P0KE A+C,146:NEXT C 

370 FOR C=72 TO 79:P0KE A+C,144:MEKT C 

371 FOR C=80 TO 87:P0KE ft+C,128:MEXT C 

372 FOR C=88 TO 95:READ CHAR:POKE A+C, 
CHAR: NEXT C 

395 IF TIM>=1 AND TIM<3 THEM RESTORE 1 
040 

396 IF TIM>=3 THEM RESTORE 7080 

397 TIM=TIM+1 

398 MM=2:IF TIM=1 OR TIM=5 THEM MM=1 
400 READ GR1,GR2,GR3,GR4 

410 IF GR1=-1 THEM GOTO 440 

420 COLOR 35;PL0T GRl, GR2 : DRAWTO GR3,G 

R4 

430 GOTO 400 

440 READ G1,G2 

450 IF Gl=-1 THEM 500 

460 COLOR 130:PL0T G1,G2 

470 GOTO 440 

500 IF TIM<4 THEM COLOR 35:PL0T 3,2:PL 

OT 7,3:PL0T 6,3:PL0T 1,16:C0L0R 32:PL0 

T 12,14 

502 BAGS=0:DBAGS=0:GOLD=0:KEV=0:IF TIM 

<4 THEM COLOR 37:PL0T 18,22 

583 IF TIM<4 THEM RESTORE 1128 

504 IF TIM>=4 THEM RESTORE 709O:LOCATE 

10,11,ZZ:IF ZZ=32 THEM COLOR 37:PL0T 
10,11 

506 X=ie:Y=l:READ RMX:READ RMY:MH=RMX: 
MY=RMV:X1=:10:V1=1 

507 READ 5D0,SD01,SD,SD1,SC,SC1,K,E,AX 
,AY,NB 

510 X1=X:Y1=Y 

515 POKE 711,251 

516 POKE 77.0 

520 IF STICK (OJ =15 THEM GOTO 580 

530 J=STICKfO> 

540 IF J=ll THEM X=K-1 

550 IF J=7 THEM X=X+1 

560 IF J=14 THEM Y=V-1 

570 IF J=13 THEM Y=Y+1 

580 LOCATE X,Y,I:IF 1=35 THEM X=X1:V=Y 

1 

590 IF 1=139 ThCM GOSUB 2000 

595 IF 1=38 THEM G0LD=G0LD+DG0LD : BAGS= 

DBAGS:FOR ZZ=-3e TO 3e:S0UMD 8,ABSCZZ) 

,10,8:NEXT ZZlSOUND 8,0,0,0 

600 IF 1=1 THEM GOSUB 1580: GOTO 2500 

605 IF 1=37 THEM KEY=1 : ZZZ=60 : FOR ZZ=6 
TO 40 STEP -l:SOUMD 0, ZZ, 10,8 : SOUMD 
l,ZZZ,10,8:ZZZ=ZZZ-l!MEXT ZZ 

606 SOUND 0,0,0,0:SOUND 1,0,0,0 

615 IF JOlS THEM COLOR 32:PL0T K1,V1 
620 COLOR 36: PLOT X,Y 

622 IF K=5D0 AMD Y=5D01 AMD KEY=1 AND 
STRI6C0)=O THEM COLOR 32:PL0T SD,SD1 

623 IF K=5C AMD Y=SC1 THEM PGOLD=PGOLD 
HHG0LD:C0LOR 39:PL0T SC,SC1 :X=AX :X1=X: Y 
=AV:Y1=Y:GOLD=0:GOSUB 9300 

624 IF BAGS<=MB AND 1=39 THEN 5000 
630 MM=MM»-1 

640 IF MM=1 THEN 510 

650 LOCATE MK-1,MY,D1 

660 LOCATE MX.MY-1,D2 

670 LOCATE HX+1,HY,D3 

680 LOCATE MX,MY+1,D4 

690 IF XOMX and YOMY THEM 758 

700 IF X=MX AMD MY>Y THEM FD=2:FD1=0 

710 IF K=HX AMD MY<V THEN FD=4:FD1=0 

720 IF Y=MY AND MX>X THEN FD=1:FD1=0 

730 IF Y=MY AND MX<K THEM FD=3:FD1=0 

740 GOTO 790 

750 IF MM<X THEM FD=3 

768 IF MX>K THEN FD=1 

770 IF MY<Y THEN FD1=4 

780 IF MY>Y THEN FD1=2 

790 REH 

795 IF FDIOO THEN 900 

800 IF FD=4 AND D4<>35 THEN RD=4:G0T0 



1150 

818 IF FD=3 AND D3<>35 THEN RD=3:G0T0 

1150 

820 IF FD=2 AND D2<>35 THEN RD=2:G0T0 

1150 

830 IF FD=1 AND Dl<>35 THEN HD=1:60T0 

1150 

840 RD=INTCRMD(0)»4)+1 

850 IF RD=1 AMD Dl=35 THEM 840 

860 IF RD=2 AND D2=35 THEM 840 

870 IF RD=3 AND D3=35 THEM 840 

880 IF RD=4 AND D4=35 THEN 840 

890 GOTO 1150 

900 WAYS=0:IF FD=1 AND Dl<>35 THEN WAY 

5=MAYS*1:M1=1 

902 IF FD=2 AND D2<>35 THEM HAYS=WAYS+ 

1:H2=1 

904 IF FD=3 AND D3<>35 THEM MAYS=MAYS4 

l:M3=l 

906 IF FD=4 AMD D4<>35 THEM MAYS=WAYS+ 

1:M4=1 

908 IF FD1=1 AND Dl<>35 THEN WAYS=MAYS 

+l:Wll=l 

910 IF FD1=2 AND D2<>35 THEN WAYS=MAYS 

+l:M22=l 

912 IF FD1=3 AND D3035 THEN WAY5=HAYS 

+l:W33=l 

914 IF FD1=4 AND D4<>35 THEN WAYS=WAYS 

+1:W44=1 

916 IF WAYS=2 THEN 4000 

918 IF Ul=l THEN RD=1 

920 IF W2=l THEN RD=2 

922 IF H3=l THEN RD=3 

924 IF M4=l THEN RD=4 

925 GOTO 4070 

926 GOTO 1150 

999 GOTO 510 

1000 DATA 170,84,124,170,146,254,40,10 
8 

1010 DATA 126,60,66,223,209,219,66,60 

1020 DATA 170,85,170,85,170,85,170,85 

1030 DATA 60,126,219,255,189,195,126,6 



1035 DATA 0,0,7,253,85,87,0,0 

1037 DATA 28,54,119,65,119,119,119,127 

1038 DATA 24,24,126,126,24,24,24,24 

1039 DATA 31,35,69,249,137,138,140,248 

1040 DATA 13,13,14,13,2,14,4,14,5,15,4 
,15,5,16,8,16,15,15,16,15,13,16^14,16, 
2,18,5,18,7,18,9,18,15,18,17,18 

1041 DATA 1,0,18,0 

1050 DATA 2,19,3,19,7,19,9,19,11,19,13 

,19,5,20,7,20,16,20,18,20,2,21,3,21,5, 

21,7,21,9,21,14,21,2,22,3,22 

1060 DATA 1,1,1,5,18,1,18,7,9,1,9,4,16 

,6,16,8,18,12,18,16,16,14,16,17,16,20, 

16,22,13,10,13,11,13,17,13,18 

1070 DATA 9,9,9,10,8,13,8,14,3,16,3,17 

,0,0,0,23,0,23,19,23,19,23,19,0,3,1,9, 

1,11,1,16,1,11,2,16,2,11,4,16,4 

1080 DATA 4,6,9,6,3,3,5,3,6,4,7,4,3,5, 

4,5,11,5,12,5,14,6,16,6,11,7,12,7,2,8, 

6,8,8,8,9,8,11,8,14,8,5,9,6,9 

1090 DATA 11,9,13,9,16,9,17,9,1,10,3,1 

0,6,10,7,10,15,10,17,10,6,11,7,11,9,11 

,11,11,2,12,3,12,17,12,18,12,5,13,6,13 

1095 DATA 10,13,16,17,11,13,11,17,-1,0 

,0,0 

1100 DATA 4,2,5,5,13,7,4,9,8,9,12,10,1 

8,11,15,12,3,13,9,13,5,14,13,14,12,15, 

4,16,15,17,6,18,4,21,12,22,15,20 

1110 DATA 2,6,-1,0 

1120 DATA 17,2,15,22,16,22,18,22,9,12, 

17 22 -19 

1150 IF LI=e THEM COLOR 8:PL0T 19,0:PL 
OT 0,0 

1151 IF LI=-1 THEN COLOR 9:PL0T 19,0:P 
LOT 0,0 

1152 IF H=-2 THEN COLOR 10:PL0T 19,0: 
PLOT 0,0 

1154 GOTO 4110 

1500 COUNT=8O0:FOR ZZ=20 TO STEP -1; 

SOUND O.COUNT. 10, ZZ: SOUND l.COUNT+CZZK 

993,10,ZZ:C0UNT=C0UMT-ie:MEKT ZZ 

1510 SOUND 0,0,0,0:SOUND 1, 0,0,0 : RETUR 

2000 BAGS=BAGS-1 : GOLD=GOLD+INT CRND COJ* 
180)+l:DBAGS=DBAGS-l 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 81 



2885 FOR ZZ=2e TO 8 STEP -1:S0UHD 8,20 

.10,ZZ:I«EKT ZZ:SOUND 0,8.0,8 

ioie IF DBftGS=-10 OR BAG5=-18 THEM COL 

OR 37:PL0T K,E:COLOR 39!PL0T 5C,5C1 

2820 RETURN 

2580 COLOR 38:PL0T K,V:REM :LI=LI-1:IF 

LI=-3 THEN G05UB 915e:G0SUB 6808:G0T0 

2578 
2510 LOCATE K,Y,ZZ:IF ZZ=36 THEN COLOR 

32 ".PLOT K,Y 
2520 LOCATE K+1,V,ZZ:IF ZZ=36 THEN COL 
OR 32:PL0T K+1,Y 

2530 LOCATE K-1,V,ZZ:IF ZZ=36 THEN COL 
OR 32:PL0T K-i,V 

2540 LOCATE X,V-1,ZZ:IF ZZr36 THEN COL 
OR 32:PL0T X,Y-1 

2550 LOCATE K,Y*1,ZZ:IF ZZ=36 THEN COL 
OR 32;PL0T X,Y+1 

2555 LI=LI-l:IF LI=-3 THEN GOSUB 9150: 
G05UB 6888 -.GOTO 2578 
2568 COLOR 38:PL0T K,Y 

2578 X=18 : Y=l : X1=X : V1=Y ; HX=17 : MV=2 : OMX 
=MX:OMV=MY 
2572 D=32 

2575 IF LI=-3 THEN LI=:0:GOTO 395 
2618 FOR FN=e TO 5eO:NEXT FN 
2617 DGOLD=GOLD : G0LD=8 : X=18 : Y=l : Xl=i8 : 
Yl=l 

2628 MX=RMX:HY=RMV 
2638 D=32 
2788 GOTO 503 
3888 FOR C0UNT=8 TO 5 
3818 SETCOLOR 8,8,8 
3815 FOR ZZ=1 TO 5B!NEXT ZZ 
3028 SETCOLOR 8,2,8 
3825 FOR ZZ=1 TO S8:NEXT ZZ 
3838 NEXT COUNT 
3048 SETCOLOR 8,2,8 
3858 RETURN 

4808 RM=INT(RND(8}«2)+1 
4818 IF RH=1 THEN 1118 
4028 IF Ml=l THEN RD=1 
4838 IF M2=l THEN RD=2 
4848 IF M3=l THEN RD=3 
4858 IF H4=l THEN RD=4 
4068 GOTO 1158 
4878 IF Hll=l THEN RD=1 
4888 IF M22=l THEN RD=2 
4898 IF M33=l THEN RD=3 
4188 IF M44=l THEN RD=4 
4118 IF RD=8 THEN 4388 
4128 IF RD=1 THEN MH=MX-1 
4138 IF RD=2 THEN MY=HV-1 
4148 IF RD=3 THEN MX=HX+1 
4158 IF RD=4 THEN MY=MV*1 
4155 LOCATE OMX, OMV, ZZ : IF ZZ=36 OR ZZ= 
39 THEN 4162 

4168 COLOR D:PLOT OMX,OMY 
4162 0=32 
4165 LOCATE MX,MY,D:IF D=36 THEN GOSUB 

15e8:G0T0 2580 
4178 COLOR l:PLOT MX, MY 
4175 0MX=NX:OMY=MY 

4180 FD=8 : FD1=8 : RD=e : Dl=8 : D2=8 : D3=8 : D4 
=e:MAYS=8:RD=e 

4198 Hl=8 : H2=e : H3=8 : W4=8 : Hll=8 : H22=8 : H 
33=8:U44=8 
4288 GOTO 510 
4388 RD=INT(RND(8}«4)+1 
4318 IF RD=1 AND Dl=35 THEN 4388 
4328 IF RD=2 AND l>2=35 THEN 4388 
4338 IF RD=3 AND 03=35 THEN 4388 
4348 IF RD=4 AND D4=35 THEN 4388 
4356 GOTO 4120 

5888 GOSUB 38e8:G0SUB 9888:G0SUB 6888: 
TIM=TIM+l:GOTO 395 
6888 COLOR 32 : Cl=8 : C2=8 : IF LI<>-3 THEN 

GOTO 6885 

6881 IF LI=-3 THEN GOSUB 6818JP0KE 756 
,224:P0SITI0N 8,5:? »6;" QSiiaS "JP 
GOLD 

6882 POSITION 4,18:? tt6;"push trigger" 
:IF LI=-3 THEN TIM=8 

6883 SETCOLOR 1,12,18:IF STRIGCe>=8 TH 
EN 6885 

6884 FOR ZZ=1 TO 58: NEXT ZZ: SETCOLOR 1 
,8,e:F8R ZZ=1 TO 58:NEXT ZZlGOTO 6883 



6885 RESTORE 1840: IF LI=-3 THEN PGOLD= 

8 

6887 COLOR 32: GOSUB 6818: POKE 756, SET: 

RETURN 

6010 FOR C1=0 TO 23: PLOT e,Cl:DRAHTO 1 

9,Cl:NEXT Cl:RETURN 

7880 DATA 8,8,19,8,19,8,19,23,19,23,8, 

23,8,23,8,8,3,3,5,3,5,2,5,2,9,1,11,1,1 

4,3,16,3,14,2,14,2 

7810 DATA 9,4,11,6,9,6,11,4,16,5,14,5, 

14,6,14,6,9,18,11,18,11,18,11,12,11,12 

,9,12,9,12,9,18,3,5,5,5,5,6,5,6 

7820 DATA 3,9,3,10,5,9,5,10,14,9,14,18 

.16.9,16,18,3,12,3,13,5,12,5,13,14,12, 

14,13,16,12,16,13 

7838 DATA 18,15,18,17,9,16,11,16,3,17, 

5,17,14,17,16,17,3,19,5,19,14,19,16,19 

8 28 9 28 
7848 DATA 11,28,12,28,8,22,9,22,11,22, 
12,22,2,22,2,23,17,22,17,23,12,21,12,2 
1,8,21,8,21,3,19,3,28 

7858 DATA 3,16,3,17,16,16,16,17,16,19, 
16,28,2,10,3,18,6,18,5,18,2,12,3,12,6, 
12,5,12,13,18,14,10 

7868 DATA 16,18,17,18,13,12,14,12,17,1 
2 17 12 ""1 ~1 

7870 'data 4,2,15,2,4,6,15,6,18,4,18,6, 
9,5,11,5,4,9,15,9,2,11,4,11,6,11,13,11 
,15,11,17,11,4,13,15,13 

7888 DATA 9,15,11,15,9,17,11,17,4,16,1 
5,16,4,28,15,28,9,21,11,21,4,2,-1 
7898 DATA 18,21,18,13,18,12,18,11,18,2 
2,18,12,-28 

8888 DATA 121,6,96,6,91,6,81,1,8,8,121 
,8,96,8,91,8,81,1 

8818 DATA 8,8,121,8,96,8,91,8,81,2,96, 
2,121,2,96,2,188,1 

8820 DATA 8,8,96,8,96,8,108,8,121,2,12 
1,6,96,2,81,4,81,4,91,2 

8830 DATA 0,8,91,8,96,8,91,8,81,2,96,2 
,108,4,108,4,121,1,-1 
9800 RESTORE 8800 
9818 READ PITCH 
9028 IF PITCH=:-1 THEN 9130 
9848 READ DURATION : DURATION=INT CSO/DUR 
ATION) 

9858 SOUND 8, PITCH, 18, 8 
9860 IF PITCH=8 THEN 9888 
9878 SOUND 1, PITCH+1, 18, 8 
9888 FOR ZZ=1 TO DURATION :NEXT ZZ 
9890 SOUND 0,0,0,8 
9188 SOUND 1,0,8,8 
9110 FOR ZZ=1 TO 5:HEXT ZZ 
9128 GOTe 9810 
9130 RETURN 
9158 RESTORE 9270 
9168 READ DURATION: IF DURATI0N=-1 THEN 

RETURN 
9170 DURATI0N=INTCDURATI0N«18) 
9188 READ PITCH: IF PITCH=8 THEN 9208 
9198 PITCH=PITCH«3 
9208 SOUND e,PITCH,18,8 
9218 SOUND 1, PITCH+1, 18, 8 
9228 FOR ZZ=1 TO DURATION : NEXT ZZ 
9230 SOUND 0,0,0,0 
9240 SOUND 1,0,0,8 
9258 FOR ZZ=1 TO 3: NEXT ZZ 
9268 GOTO 9160 

9278 DATA 2,47,2,60,1,81,3,68,2,47,2,6 
8,1,53,3,53,2,47,2,60,1,45,2,45,1,45 
9288 DATA 1,47,1,47,1,53,1,53,3,68,1,8 
,1.5,47, .5,53,1,68,1,53,1,47,1,47.2,47 
,1,53,1,53,2,53 

9298 DATA 1, 47, 1, 48, 2, 48, 1 . 5, 47, . 5, 53, 
1,68,1,53,1,47,1,47,2,47,1,53,1,53,1,4 
7,1,53,3,68,1,8,-1 

9388 FOR ZZZ=1 TO 3: FOR ZZ=20 TO 8 STE 
P -l:SOUND e,28,18,ZZ:NEXT ZZ:SOUND 8, 
8,8,8:NEXT ZZZ:RETURN 
18888 F8R Z=l TO 3 
10818 A=PEEKf7881 

18028 PBKE 708,PEEKC711) :PeKE 711, PEEK 
C718}:P0KE 710,PEEKC789> :POKE 7e9,A:NE 
XT Z:FOR 8=1 TO 18:NEXT B:RETURN 



PAGE 82 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



(see DrCHECK 2, p. 26) 

1 OftTft 0^703,82,669,687,337,397,3:7,195 

,539,211,426,208,786,730,6091 

25fl IXJT/1 162,99,303,742,713,712,721,64 

2,282,323,121,875,275,455,697,7122 

430 DflTft 704,833,696,201,728,445,337,5 

1,429,826,926,151,238,959,36,7560 

530 DftTft 918,74,785,93,91,205,828,681, 

484,731,983,17,973,483,857,8203 

624 DftTfl 488,689,493,829,812,831,814,1 

82,910,911,917,918,746,924,929,11393 

770 DftTft 167,170,113,918,228,224,220,2 

16 , 977 , 846 , 853, 868, 867 , 983 , 660 , 8302 

982 DflTft 660,667,674,27,30,40,50,918,8 

10,807,811,815,974,970,746,8999 

1080 DOTfl 226,165,214,287,97,68,763,80 

,750,137,418,548,616,647,412,5428 

1895 DftTft 418,873,132,916,490,600,859, 

724,251,119,657,327,491,783,339,7979 

2510 DftTft 724,239,248,210,201,494,202, 

783,213,871,731,517,774,208,903,7318 

3800 DftTft 810,677,667,660,668,195,662, 

788,842,933,0,5,18,15,719,7651 

4870 DftTft 706,715,724,726,908,549,557, 

551,559,311,753,204,808,251,772,9094 

4180 DftTft 625,95,887,819,607,611,615,6 

19,730,1,991,985,398,561,836,9380 

6805 DftTft 105,951,595,618,605,393,695, 

974,457,283,942,188,257,974,783,8820 

8820 DftTft 596,86,199,110,118,997,893,4 

00,342,698,223,218,588,743,801,7012 

9150 DftTft 226,485,338,695,558,894,342, 

698,223,225,593,761,514,393,665,7610 

9300 DftTft 852,309,60,626,1847 



40 SET=PEEKtl06J :REM THIS IS WHERE THE 

CHflRftCTERS WILL GO IN TERMS OF PftGES 
OF MEMORY 

50 REftD MflLUEMF UftLUE = -l THEN 95:REM 
REftD IM PftRT OF ft CHftRflCTER 
60 POKE CHBft5E+C,UftLUE:REM PUT THE HUM 
BER IN HEMORV 
70 C=C*1:G0T0 50 
75 REM DftTft FOR SPACE 
80 DftTft 0,0,0,0,0,0,0,0 
85 REM DftTft FOR SMILEY 
90 DftTft 60,126,219,255,189,195,126,60, 

95 POKE 756, SET: REM TELL THE COMPUTER 
WHERE THE NEW CHftRflCTER SET IS LOCftTED 
100 COLOR liPLOT 5, 5: REM PUTS SMILEV 
H SCREEN ftT 5,5 

118 GOTO 110: REM ENDLESS LOOP FOR DI5P 
LftV PURPOSES 



To determine the number for the COLOR 
statement in line 100: First, Smiley is to he green. 
Color register number 1 normally contains green so 
it is used. Smiley has been defined in the program 
above as the second character in the redefined set. 
(The space was the first.) 

With these pieces of information 1 looked up the 
number in a chart, like the following one: 



For those interested, here are some of the 
techniciues used in this program. First is "redefined 
character sets", which when carefully laid out can 
simulate a high resolution graphics screen, but 
requiring much less memory. They are fairly easy to 
design. Each character can be one of four different 
colors. Step one is to design some characters. Here's 
Smiley as an example: 



|l28 64l32|l6|8 U Iz 1 


■■ 




- 


™ 


r 


™ 


^ 


^ 


■■ 




mm 




^ 


^ 


^ 




^ 




n 


^ 






r 


^ 


_■■■■_ 


4 




8 


-. 


I 


6 




3 


2 




6 




























LF^Pl 






4 




8 


^ 


1 


6 


■V 


3 


2 




6 


4 


. 


L 


2 


6 














Ph^^HiP 




+ 


2 


^. 


8 


^ 


1 


6 


4 


fi 


4 




1 


2 


8 




., 


1 


9 














, 


2 


+ 


U 


-t 


8 




1 


6 


, 




2 


4 


f) 


;, 


.. 


1 


?. 


a 




■> 


5 


5 




+ 


A 




a 


-f 


I 


6 


^ 


3 


2 




1 


2 


8 




1 


8 


9 














* 


2 




Ci 


4 




1 


2 


8 


_ 




9 


5 






















irhtK^FT 




, 


^ 


+ 


8 


+ 


I 


6 


+■ 


3 


2 




6 


4 




1 


2 


6 














\ r^^T 


4 


_ 


8 




1 


6 




3 


2 


= 


b 






























Make an 8 by 8 grid; mark the blocks to be filled 
in, then add up the corresponding numbers to 
determine its POKE value. 

Following is a program which defines a space, and 
a Smiley character and then prints out a picture of 
Smiley on the screen. The number used after the 
COLOR statement in line 100 is explained later. 



10 GRftPHICS 2+16 :REM STftRT OUT WITH ft 

GRAPHICS STftTEMEHT 

20 POKE 106, PEEK (106) -2: REM SET ASIDE 

2 PftGES OF MEMORY FOR THE CHftRftCTER SE 

T 

30 CHB0SE=PEEK(106]M256:REM THIS IS WH 

ERE THE CHftRftCTER SET WILL BE POKED IN 

TO MEMORY 



COLOR REGISTER = 32, 33 through 95 
COLOR REGISTER 1 = 0, 1 through 124, (125*), 

126, 127 
COLOR REGISTER 2 = 160, 161 through 223 
COLOR REGISTER 3 = 128, 129 through 154, 

(155*), 156 through 255 
* 155 selects the same thing as 32. 125 has no effect. 

Smiley 's color is set by color register 1 so look in 
the second row. Since he is the second character use 
the 2nd number in the 2nd row, which is 1. As 
another example, if Smiley were to be controlled by 
color register 2 the correct number would be 161. 
Try 161 in the example program above and see what 
happens. 

Before you get too carried away, remember that 
the example program will not allow text to be 
displayed on the screen. To switch back to text only 
POKE 756, 224. 

If you are really interested in redefining a complete 
character set there are several software packages out 
which make it easier. 

Another section of the Halls of the Leprechaun 
King which is interesting is its color rotation 
subroutine (10000-10020). Adding this to a 
program's title makes it very colorful. Here is how it 
works. Memory locations 708-711 contain the 
numbers which determine the colors which will be 
displayed from each color register. The subroutine 
rotates the colors from one register to another so 
that everything on the screen is flashes through each 
color. Try it in one of your programs. 

Good Luck! And keep on coding! D 



"... faitnfuUy captures 
the look, spiiit ana 
play of aicaae 
'Spaci cJnvaaeis 

-John Anderson, 
Creative Computing 



"i^ll a'le excellent veisions 
of the aicaae games 
with, supe'i giJ^nlcs 
ana sound. 



-Mark I ' 
A.N.A.1: 





-Gary and Marcia Rose 






Imiaders ^ 




vVe a\e ^belious <^Dout yJa\ Carries I 




V 






-> 




The definitive, super-fast multiple skill 
shoot-out game for Atari® 400/800™ 

with superb , 

arcade-type 

realism I 



Retail price for 16K cassette or diski ^39.95 
One or two player game. 
Coming soon. Venus Voyager, Time Warp, and 
more programs by tine Englisli sottware 
designers and authors, 

The English Software Company 

PO, BOX 3185 • REDONDO BEACH, CALIFORNIA 90277 

(213)372-3440 

Direct orders welcome. 



'i^ «f- 



ENGLISH SO, 



© 1982, English Software Company • Atari is a trademark of Atari, Inc. • English Software is not related to Atari, Im 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 85 



A LISP TUTORIAL 



by Ken Litkowski 



LISP is an old language, dating to the dark ages of 
computers (pre 1960), still hardly standardized, yet 
still making a contribution to the evolution of new 
languages. Its influence will continue to be felt in the 
years to come. And now it is emerging from the 
hallowed halls of academe and made available to us 
lesser mortals. It is a language or research; its 
availability on personal computers will allow anyone 
so inclined to participate in the future. 

LISP is primarily a symbol manipulation language 
used today in many areas of the ever-expanding field 
of artificial intelligence. Programs in LISP can do 
calculus problems (on a level equivalent to college 
freshmen), prove mathematical theorems, solve 
geometric analogy problems, provide natural 
language interfaces to data base systems for limited 
domains such as moon rocks and inventory systems, 
and have been used for word processing, symbolic 
mathematics, and writing operating systems, utility 
programs, compilers, and interpreters for personal 
computers. These applications have been developed 
on large computers, but there is no reason why 
LISP's capabilities cannot be harnessed on a personal 
computer. (See the review of a LISP implementation 
for the ATARI in A.N.A.L.O.G. #8, parricularly 
noting its limitations, which effect the speed of 
flexibility of LISP programs.) In this tutorial, I will 
attempt to convey the power, beauty, and 
sophistication of this language, while trying to 
demystify the aura which surrounds artificial 
intelligence. 
The Basics 

LISP is essentially a functional language, meaning 
that its capabilities are implemented through 
functions (comparable to the functions in 
FORTRAN and analogous to the subroutines in 
BASIC). A function in LISP is always enclosed in 
parentheses, with the function name given first, 
followed by its arguments (or values to be given to 
the function, if any). For example, (+2 5) will return 
the value 7 . This prefix notation is important, since it 
ensures that the system always knows where to look 
for a function name. Other functions can also be 
used as arguments, nested to any depth. Listing 1 
shows several examples of mathematical functions. 
Arguments for the more complex examples are 
discernible by balancing the parentheses. 

As is evident from the examples in Listing 1, 
parentheses proliferate in LISP. This brings us to 
another main characteristic of LISP, namely, that it is 



a list processing language. The fundamental entities 
in LISP are called atoms (roughly corresponding to 
veriable names in most other languages). Atoms may 
be symbolic, such as +, SQRT, x, or 3x@H#, or 
numeric, such as 4 or 5.2374. Some symbolic atoms 
are given special meaning when they are used as 
function names (recognized as such either by the 
system or through user definition). Other symbolic 
atoms may be given values or properties. Atoms may 
be grouped together into lists, which can then be 
grouped into higher-level lists, and so on. Lists are 
always enclosed in parentheses. The functions in 
Listing 1 are nothing more than lists, some 
containing sublists, and all of them distinguished in 
that their first elements are symbolic atoms 
recognized as function names which cause a 
computation to be performed. 



LISTING 1. 




(t 3.14 1.27) 


User input 


4.41 


;L1SP response 


<» 4.13 3) 


■User input 


12.39 


;LISP response 


(.' 327 288) 


User input 


! .635 


;LISP response 


(» (+ 3 4 ) (SUB 13 5)! 


User input 


56 


jLIS^ response 


(SQRT 1.4.541) 


|User input 


1.21 


;LISP response 



Atoms and lists collectively are called symbolic 
expressions, or s-expressions. Their manipulation is 
the essence of LISP. As mentioned above, symbolic 
atoms may be given values; these values do not have 
to be numbers; they can be other symbolic atoms, 
lists, and even lists which are also functions. This 
makes LISP a symbolic language in addition to being 
a functional and list processing language. 
EVAL and QUOTE 

The ability to give atoms values which are other 
atoms, lists, or functions is what gives LISP its 
power. Understanding how this is done is therefore 
of primary importance. There is a simple function 
called SETQ, which gives a symbolic atom its value. 
Thus, we can write (SETQ^X 3); this is equivalent to 
the BASIC or FORTRAN assignment statement 
X=3. We can also write (SETQ^X 'Y) or (SETQ,X 
'(A B C) ). These give X the value Y or (A B C), 
respectively, but they do so in a peculiar manner. 
First note that these values were preceded by a quote 



PAGE 86 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



mark. This quote mark inhibited what is known in 
LISP as evaluation. 

Whenever LISP encounters an atom or list, it 
attempts to evaluate it. That is, it will substitute the 
value of the atom or the list for the atom or list itself. 
In the case of the Y above, LISP would substitute the 
value of Y and make that value the value of X, if we 
had not inhibited evaluation with the quote mark or 
with the equivalent QUOTE function. In the case of 
the list (A B C), LISP would have attempted to 
determine its value by assuming that it is a function 
with name A and arguments B and C. Not finding a 
function with such a name would have caused an 
error. The quote mark inhibits such evaluation. In 
both cases, the QUOTE function returns the literal 
expression which follows it. This enables X to be 
given the literal values intended. 

In the examples of Listing 1, where a function was 
given as an argument to another function, the 
absence of a quote mark permitted the evaluation of 
the function. The value of the function thus became 
the value of the first function's argument. 
Sometimes, however, it is necessary to use the 
opposite of the QUOTE function and let a symbolic 
atom go through two (or more) stages of evaluation. 
This is accomplished with the EVAL function. 
Listing 2 shows an example of this, where the atom A 
is given the value B and the atom B is given the value 
C. When A is entered, LISP returns its value B; 
similarly, B returns the value C. But, typing (EVAL 
A) returns the value C. In creating the listings for this 
article, I set a variable to the lines marked "User 
input" and then EVALuated that variable to get the 
LISP response. In most of the listings, this resulted in 
the evaluation of a function. 



functions; note again that the QUOTE function was 
used to inhibit evaluation. 



LISTING 2. 



(SETQ A (QUOTE B)) 

B 

(SETQ B (QUOTE 0) 

C 

A 

B 

B 

C 

(B/AL A) 

C 



I User input 

;L1SP response 

;User input 

jLISP response 

;User input 

;LISP response 

;User input 

jLISP response 

jUser input 

;L1SP response 



List Processing Functions 

Since LISP is a list processing language, it has 
special functions for manipulating them. The most 
basic functions are CAR (for Contents of Address 
Register) and CDR (for Contents of Decrement 
Register), where both acronyms were taken from the 
structure of the IBM 7090. CAR returns as its value 
the first s-expression of the list, while CDR returns 
the list that remains after the first element is 
removed. Listing 3 contains some examples of these 



LISTING 3. 




(CAR (QUOTE (A B C))) 


;User input 


A 


■,LI3P response 


(CDR (QUOTE (A BO)) 


jUser input 


(B C) 


jLISP response 


(CAR (CDR (QUOTE (A B C)))) 


lUser input 


B 


;LISP response 


(CDR (COR (QUOTE (A B C)))) 


jUser input 


(C) 


;LI3P response 


(CAR (QUOTE ((A B) C))) 


;User input 


(A B) 


;LISP response 



Three other basic functions are APPEND, LIST, 
and CONS. APPEND merges all the elements of 
each of its argument lists into one list, while LIST 
simply forms its arguments into a single list. CONS 
takes its first argument, any s-expression, and makes 
it the first element of the list which is its second 
argument. Listing 4 shows several examples of their 
use; in these cases, X has been given a value before 
use by the demonstrated function; no quote mark 
has been used in order to show what happens when 
an atom is evaluated prior to its use by a function. 
Several other list processing functions are usually 
available in any implementation of LISP. 

LISTING 4. 



(SETQ X (QUOTE (A B))> 
(A B) 

(APPEW X X) 
(ABA B) 
(LIST X X) 
((A B) (A B)) 
(CONS X X) 
((A 6) A B) 



|IJser input 

;LISP response 

;User input 

;L1SP response 

;User input 

|LISP response 

jUser input 

(LISP response 



Lists may have any degree of complexity; by giving 
some lists a certain degree of regularity, they can be 
used in special ways by using system or user defined 
functions. Listing 5 shows one type of list 1 have 
created for analyzing the semantic structure of 
dictionary definitions. I have developed special 
functions to access particular parts of such lists when 
I wish to perform specific analyses. This list is known 
as a property list, in this case associated with the 
atom IF. An atom may have any number of 
properties, each of which in turn may have values. 



LISTING 5. 



(PROPERTY LIST FOR THE DEFINITION OF MF") 
((CODE (ID) 
(TOKEN 
(IF) 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 87 



(«)EFS (!8» 
(DBFS 

(d in the event that)) 

(C2 in case)) 

((3 allowing, concedino, or granting that )) 

«4 SUPPOSING)) 

((5 so long as)) 

(|',4 on condition that)) 

((7 WTHER)) 

<<8 USA6EN0TE —used to introduce an 
exclamation expressing a wish )) 

(<9 euen though)) 

((18 although perhaps)) 



Predicate Functions 

LISP is a logical language in addition to being a 
functional, symbolic, and list processing language. 
LISP has two special atoms, T and NIL, roughly 
corresponding to 'true' and 'false', respectively. If 
one were to enter an atom, thus requesting its value, 
and it had none, the system would respond NIL. If it 
had a value, that value would be returned. LISP has 
several functions which ask questions which demand 
an answer of T or NIL. Among these are ATOM 
(which asks whether its argument is an atom), 
EQUAL (which asks whether its two arguments are 
equal in value), NULL (which asks whether its 
argument is the null set), MEMBER (which asks 
whether its first argument, an s-expression, is an 
element of the second argument, a list), and the 
logical connectives AND, OR and NOT (which act 
in the usual way). Several other predicate functions 
are usually available, and others are easily created. 
Defining Functions 

Each LISP implementation has a special function 
for defining new functions. In the system which I 
use, this function is called DEFINEQ,. The 
arguments of this function are the function name, 
the parameters of the function being defined, and the 
body of the function which articulates what the 
function is to do when it is called. The body of a 
function is much easier to comprehend for anyone 
with programming experience. Usually, the body of 
a function will contain a series of s-expressions 
combined in the form desired. After the function is 
defined, it can be used by itself or as part of another 
function. When used, the function always returns a 
value (which may be just about anything). 

One important type of s-expression which is 
frequently used in functions is the COND function, 
which makes use of the predicate functions. COND 
can have any number of arguments, each of which is 
a conditional expression called a clause. In each 
clause, the first s-expression is a predicate function; 
if this function has the value T (for true), then any 
expressions which follow are executed (or evaluated, 
to be a purist). The last such expression is returned 
as the value of COND. LISP examines each clause of 
a COND in turn, until it finds one whose first 
expression evaluates to T (actually, to anything that 
is nonNIL), and then evaluates everything else in the 



clause. Listing 6 is a function like CONS, except that 
it will add an item to a list only if it is not already a 
member of the list. The first clause of the COND 
asks whether the item is already in the list and, if so, 
returns the list without the item being added. If the 
item is not on the list, COND will bypass the first 
clause, going to the second. Since we have made the 
first element of the second clause T, we have 
guaranteed that the consequents of this clause will 
always be executed if the first clause is not successful. 
In this case, the item not on the list will be added. 
The two examples in the listing show what happens 
to the list L when using this function. 

LISTING 6. 



(DEFINEQ UNIQUECmS 
(LAMBDA (ATM LST) 
(GOND ((MEMBER ATM LST) 
LST) 

(T (CONS ATM LST)))) 
) 



(SETQ L (QUOTE (A B))) 
(A B) 



;Usep input 
;LISP response 



(UNIQIECONS (QUOTE D) L) |User input 



(DA B) 

(miQUE(a)^S (QUOTE A) L) 

(A B) 



jLISP response 
;User input 
jLISP response 



Conceivably, a function can be written in only one 
line, but typically several steps are performed. This 
requires the use of the function PROG which can 
have an indefinite number of arguments, each of 
which is an s-expression. Each argument is evaluated 
in turn and the last such argument is the value of the 
function. The first argument of PROG is a list of the 
variables to be used in the remainder of the 
arguments; when this function is entered, all such 
variables are initially given the value NIL. When one 
of the arguments in PROG is a symbolic atom, it is 
construed as a label which marks a place in the s- 
expressions to which a transfer can be made. This is 
done using the GO function. Listing 7 is a function 
to compute the factorial of the number N. This 
function also shows another example of how the 
COND function can be used. In this example, 
COND has only one clause; as long as the first 
expression is not T, the second expression (the 
function RETURN, used to exit and return a value 
from the PROG function) will not be evaluated. 



LISTI^B 7. 



(DEFINEQ FACTORIAL-1 
(LAFCTA (N) 
(PROG (I J) 
(STQ I N) 
(SFTQ J 1) 
(SETQ J I) 
LOOP 
(COND ((EQ I 9) 



PAGE 88 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



(RETURf^ J))) 
(SETQ J (« J I)) 
(SETQ I <SUB ID) 
(GO LMP))) 



(FftCT(KIAL-l 6) 
72B 



;User input 
;L1SP response 



The factorial function can also be defined 
recursively, since LISP is also a recursive language, 
meaning that essential aspects of the language can be 
defined in terms of themselves. Thus, an s- 
expression can be defined as either an atom or as a 
left parenthesis followed by a sequence of s- 
expressions separated by blanks and followed by a 
right parenthesis. To define a function recursively 
means to use the function as part of the body of the 
function itself. Such a function is self-referential. 
Listing 8 is the factorial function written recursively. 
Note that every use of this function terminates when 
N equals 0, and returns the number 1, the second 
expression of the first clause of the COND function. 



LISTING 8. 



"mapping functions", with which a function is 
applied iteratively to a list of arguments. Listing 9 
contains a definition of the function MAPCAR, 
which applies its function argument to the CAR of a 
list. As can be seen, this function is also written 
recursively. It builds a list, one element at a time 
(using the CONS function), starting at the last 
element. This is done by recursive calls to MAPCAR 
until its second argument is the empty list (the first 
clause of the COND function). The function is 
primed to perform the CONSing operation for each 
element of the list, but makes sure it has reached the 
end of the list before it actually begins to form the list 
which will be the output. The second part of Listing 
9 shows an example of this function's use; in this 
case, the first argument is the function ATOM 
(which takes a single argument and asks if it is an 
atom or a list, returning T if it is an atom). The 
second argument of MAPCAR is the list of elements 
we wish to test. The value returned by this example is 
a list showing which elements of the list are atoms 
and which are not. 

LISTING 9. 



(DEFINEQ FACTORIAL-2 
(bWBOrt (N) 
<COND ((EQN 9) 
I) 
(T <.i N (FACTORIAL-2 (SI© N 1)))))) 



) 

(FftCTCWIAL-2 6) 
728 



;User input 
;LISP response 



Functions with Function Arguments 

An important capability in LISP is the ability to 
use functions as arguments of other functions. For 
example, in developing a parser for analyzing English 
sentences, one first defines a series of functions 
known as an interpreter to handle the analysis. These 
functions in effect constitute an entire new 
programming language, defined by the user and then 
used to write the actual parsing programs. In LISP 
the ability to create such special programming 
languages arises from functions which can take 
function arguments. EVAL and QUOTE are two 
such functions; APPLY (or APPLY* in my system) is 
another such function. 

APPLY takes two arguments, a function name and 
a list; the list contains the arguments necessary for 
the given function. APPLY then applies the function 
to the list and returns the value as if the function had 
been executed directly with its list of arguments. The 
significance of this function is that it allows 
"computed" function calls. At first glance, the value 
of this function may seem obscure, but it provides an 
ability to write programs which can write programs 
and then execute them. 

One way APPLY can be used is in what called 



(DEFINEQ MAPCAR 
(LAHBOA (FN X) 
(COND ((EQ X) 
NIL) 

a (CONS (APPLY* FN (CAR X)) 
(MAPCAR FN 

(CDR X)))))) 
) 

(MAPCAR (QUOTE ATOM) (QUOTE (A B (A B) C (D E))));User i 

nput 

(T T NIL T NIL) 

esponse 



;LISP r 



Pattern Matching 

Using the material described thus far, it is now 
possible to present an example of a very powerful 
LISP function. Listing 10 contains a function which 
will determine if a list contains a pattern of a 
specified form. Despite its apparent simplicity, it can 
be used in quite imaginative ways to search for 
patterns in an input stream. I will describe one such 
way below after I have explained the function and 
one example of its use. 



LISTING 18. 



(DEFINEQ MATCH 
(LAfffiDA (P D) 
(COND ((AND (EQ P) 
(EQ D)) 
T) 

((OR (EQ P) 
(EQ D)) 
NIL) 
((OR (EQ (CAR P) (QUOTE ») 

(EQ (CAR P) (CAR 0))) 
(fWTCH (CDR P) (CDR D))) 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 89 



T) 



U.(m (EQ (ATQHCAR (CAR P)) (QUOTE ») 

(MATCH (CDR P) (CDR D)j) 
(SET (ATmCDR (CAR P)) (MR D)) T) 
((EQ (CAR P) (QUOTE +)) 
(ODND amKU (CDR P) (CDR D)) 
T) 

(T (fttTCH P (CDR D))))) 
((EQ (ATOMCAR (CAR P)) (QUOTE +.)) 
(COND ((MATCH (CDR P) (COR D)) 

(SET (ATONCDR (CAR P)) (LIST (CAR D)3) 



((MATCH P (COR D)) 

(SET (ATOHCDR (CAR P)) (CONS (CAR D) (E 
m. (ATOHCDR (CAR P))))) 
T))))) 
) 



The arguments of the function, P and D, are both 
generally assumed to be lists, the first argument 
defining the pattern we wish to test for and the 
second argument the input we wish to test. The 
function consists of one condition, containing 
several clauses, and returns T if the pattern has been 
matched and NIL if the pattern has not been 
matched. The function is written recursively, so that 
it calls itself many times; the final call returns a value 
from one of the first two clauses in the condition 
statement. The expression (EQ, P) asks if P is the 
empty set; if so, its value is T The test in the first 
clause asks whether the lists P and D are both empty, 
i.e., have been exhausted at the same time, thus 
indicating a successful match, causing T to be 
returned. If they are not both empty, but one is, the 
test in the second clause will be T and cause NIL to be 
returned, since there is not total agreement between 
the pattern and the input being tested. 

There are two tests in the third clause (indicated 
by the OR), the second of which asks if the first 
elements of both lists are the same. The fist test asks 
if the first element of the pattern is the symbol 
which is a privileged special atom which can match 
any atom. In other words, if the pattern has a , it does 
not matter what the input has; it will always yield a 
successful match. If either of these two conditions is 
met, the function says OK for the first two elements 
and asks if the rest of the two lists match (hence the 
call (MATCH (CDR P) (CDR D) ) ). The fifth clause 
of the condition involves another privileged symbol 
+, which allows the pattern to match an arbitrary 
number of atoms in the input. It does this as follows: 
If the first element of the pattern is +, another 
COND statement is posed, in which one of two tests 
can be successful in order to return an overall value 
of T. Either the remainders of P and D match or P 
matches the remainder of D. The second possibility 
is kind of tricky. Notice that we keep the list P, which 
we know begins with the special symbol + (since that 
was the test that got us into this situation); by 
keeping the same list, when the call (MATCH P 
(CDR D) ) is made, we will end up at this same test 
on the next pass through the function. In effect, we 
have ignored the first element of the input in 



matching against the pattern. This will be made 
clearer in the example below. 

In the fourth and sixth clauses of the condition, we 
are again testing for the presence of the special 
symbols + and , but with a twist. In these cases, we 
are testing to see if the symbols are actually part of 
the atoms. For example, we could have the symbol 
+L as part of the pattern. The function ATOMCAR 
unpacks the symbol into the list (+L) and returns the 
+ as its CAR. If the test of an atom shows that it has 
one of these special symbols as its leading character, 
the remainder of the clause then sets the value of the 
following atom to the element or elements in the 
input which matches the special symbols. This 
allows the unspecified part of the input to be used as 
the value of a variable, which can be used in any 
desired manner. The example will demonstrate this. 

LISTING 11. 



(DEFINEQ DOCTOR 
(LAMBDA NIL 
(PROG (L MOTHER S) 
(POKE 128 8) 
(PRINT (QUOTE (SPEAK UP))) 

imp 

(SFTQ S (READ)) 
(OMD ((ATOM S) 

(SETQ S (LIST S)))) 
(OHD ((HATCH (QUOTE (I di tWRRIEO +L)) 3) 

(PRINT (APPEND (QUOTE (HOU LONB IWJE YOU BE 
Eh< WORRIED)) L))) 

((tiATCH (QUOTE (+ HOT^€R O) S) 
(SETQ MOTHER T) (PRINT (QUOTE (TELL HE MORE 
ABOUT YOUR FAMILY)))) 

((MATCH (QUOTE (+ CWPUTERS +)) S) 
(PRINT (QIBTE (DO MACHINES FRIGHTEN YOU)))) 
((OR (hWTCH (QUOTE (NO)) S) 
(WTCH (QUOTE (YES)) S)) 
(PRINT (QUOTE (PLKSE DO NOT BE SO SHORT WI 
THME)))) 

(MOTHER (SETQ MOTHER NIL) (PRINT (QUOTE (EAR 
LIER YOU SPOKE OF YOUR MOTHER)))) 

(T (PRINT (QUOTE (I AM SORRY OUR TIME IS UP) 
)) (RETURf^ (QUOTE GOODBYE)))) 

(GO LOOP))) 
) 



The example using the matching function is shown 
in Listing 11, which is a much simplified version of 
the notorious ELIZA program written by Joseph 
Weizenbaum in the early 1960s. It is notorious 
because it simulates conversation between a 
computer and a human that can be very beguiling. It 
was so beguiling to Dr. Weizenbaum's secretary that 
she asked him to leave because she felt she was 
having an intimate conversation with a psychologist. 
This incident, stemming from a simple program, set 
him against many of the initiatives of artificial 
intelligence. (See his book. Computer Thought and 
Human Reason.) 

The program in Listing 11 begins by asking the 
human to initiate the conversation and sets this 
input to the variable S. The main condition 
statement of the function DOCTOR then attempts 



PAGE 90 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



to match key phrases against the input and then 
prints output based on the particular match. The 
second and third clauses of the condition look for 
instances of the words MOTHER and 
COMPUTERS, using the privileged symbol + to 
ignore any of the surrounding input. Not that when 
MOTHER is found in the input stream, the 
consequent part of the condition clause sets the atom 
MOTHER to T, so that if the rest of the conversation 
becomes repetitive, the response returns to this 
earlier reference in the fifth clause of the condition. 
(A value for MOTHER of T will activate the fifth 
clause.) 

The first clause of the condition makes use of the 
facility to set the value of a variable to part of the 
input stream. If the input begins with the phrase "I 
AM WORRIED", one can expect that the following 
part of the input will begin with the word "about" 
and then contain the object of the worry. The 
program is designed to catch this regularity by setting 
the variable L to the phrase beginning with "about" 
and using it in responding to the human, thus giving 
the illusion of intelligence. Finally, the last clause of 
the condition, having exhausted its repertoire, 
finishes its conversation. Since any number of 
clauses may be added to a COND expression, the 
sample program can be extended to cover a wide 
range of apparent coversational complexity. 
Extensions 

The simplicity with which the pattern matching 
function was written should give some idea of the 
power of LISR With such a function alone, it is 
possible to write simple programs like DOCTOR to 
accomplish such things as theorem proving, solving 
algebra word problems, differentiating complex 
mathematical functions, accessing a data base with a 
relatively free form input, developing chess playing 
programs, and examining data (e.g., astronomical 
data) for patterns. The power in LISP comes from 
being able to write ever more complex functions in 
terms of simpler functions, so that the user is 
operating on a high level with all the details hidden at 
a very deep level within the machine. In effect, LISP 
allows one to create a high level language to handle 
particular problem domains. A user can operate on 
the problem domain without being concerned with 
the details. 

My particular interest lies in determining the 
semantic relationships between the different 
meanings of words, with the hope of eventually 
incorporating semantic properties in English 
language parsers. LISP enables me to conceptualize 
the problems at a higher level. My first problem is to 
analyze the regularities of dictionary definitions. To 
do this, I must develop a parser which will handle the 
peculiarities of dictionary definitions. I can build 
such a parser by identifying patterns at the lowest 
level, such as nouns, adjectives, and verbs. By 
ascertaining the existence of patterns of particular 



parts of speech, I can build more and more complex 
parsers which will look for particular types of noun 
or verb phrases. With a pattern matcher, I can first 
determine if a particular definition fits an existing 
pattern, and, if not, hypothesize a new pattern, which 
I can easily add to the set of patterns for which I test. 

When I wish to add a pattern to an existing parser, 
I have to built program statements which can be 
inserted into an existing program. Here again, LISP 
comes with a ready-made capability. A program is 
nothing more than a list, so to alter the program it is 
only necessary to alter the list. This is simplified in 
LISP since a program can be treated as a list. In fact, 
to print the functions accompanying this article, 
their definitions were given as arguments to another 
function which printed them out in a pretty form, so 
that the plethora of parentheses would not be 
confusing. (This is know as prettyprinting.) 

It is therefore possible in LISP to create a program 
based on another program. I can use a pattern 
matching program to look for particular patterns. 
Using the COND expression, I can then build a list 
which consists of program-like words. Using the 
EVAL function, such a list can be transformed into a 
program and executed. This is the power of LISP. D 



Bibliography 

LISP, RH. Winston and B.K.R Horn, Addison- 

Wesley Publishing Co., Reading, Mass., 1981. 

The Programmer's Introduction to LISP, W. D. 

Maurer, American Elsevier Inc., New York, 1972. 

The Little LISPer, D.R Friedman, Science 

Research Associates, Inc., 1974. 

Inter-LISP for the Atari Computer, Datasoft 

Inc., Northridge, Cal., 1981. 



tii fiFH CatiPHir.^ 10 GTTO OFMO 

in niJftPHTcs to 

48 RFM CHOMGP OOTfl TO CHONCF CO) OR-i 

SO FOR CM-a TO 7:R€ftl> CU:POKE 705+CN.C 

WiMEHT CM: DATA 6, 12, 23, 42, 53 , 62 ,73 84 

68 C=0;5ETC0L0R 4,C,0 

78 FOR K=0 TO 3^ 

88 FOR V=0 TO 95 

90 HW=39 -K ; VM=95-V ; l>T^T=TMT f 50R rKUWKW4 

100 COLOR l + 8»(I>I5T/8-tNT(DI5T/8>) 

.!• -I, tJ " I- U I f% f K 

120 PLOT 79-X,V 

138 PLOT K,191-V 

148 PLOT 79-l<,191-Y 

150 MFMT V 

160 MFKT K 

178 RFM ROTOTF COLOR REGISTERS 

188 rH0Li()=PEEKC705> 

190 K=705 

208 POKE K,PEeKCK+lJ 

218 H=K+1!IF K<712 THEM 200 

228 POKE 712,CH0LD 

238 GOTO 188 






EXPLORE A NEW DIMENSION IN SOFTmRE 




When you reach the stage where you need more 
sophisticated software to help you with business and other 
applications, explore the programming power and flexibility 
available to you with systems software from OSS. 

BASIC A+ Wm Rate an A + 

BASIC A + is what you'd expect from the authors of Atari BASIC! It's the only logical upgrade available to 
the Atari BASIC programmer, and it adds statements and features that enhance the Atari's real power, flexibility and 
ease of use. While retaining all the features which make Atari BASIC so easy to use, BASIC A+ also offers features that 
place it at the forefront of modem interpretive languages. 

BASIC A+ is designed to support any business programmer or Atari user. Its enhancements include structured programming, 
more powerful input/output, helpful program development and debugging aids, and several business-oriented features, including a 
very comprehensive PRINT USING command. And, exclusively for the Atari computer, there is an amazing array of 
PLAYER/MISSILE GRAPHICS commands and functions. 

No other BASIC for Atari can match BASIC A+ when it comes to features, compatibility, and ease of use... $80.00 




A Strong Software Family 

Other major systems software products from OSS include: 



MAC/65 
C/65 
TINYC 
BUG/65 



the finest and fastest complete 6502 macro 
assembler/editor package you can buy.... $80. 00 

the first native mode "small c" compiler for Atari 
and Apple computers. ...$80.00 

for structured programming, an easy-to-use inter- 
preter, a learning tool.. ..$99.95 

a powerful, self-relocatable debugger. FREE with 
MAC/65.... $34. 95 



And More... 

OS/A + , the first and finest operating system for BOTH Atari and Apple II 
computers, is NOW included FREE as a part of every OSS systems software 
package. OS/ A 4- features a keyboard-driven, easy-to-use command processor, 
several simple resident commands, and logical and readable requests for even the 
most sophisticated utility commands. Versions of OS/A-f for some higher 
capacity drives are available at extra cost. 

NOTE: Unless otherwise noted, all OSS products require 48K and at least 
one disk drive. 

ASK YOUR DEALER, or call or write for our brochure. 

ATARI, APPLE II, and TINY C are trademarks of Atari, Inc., Apple Computer, Inc., and 
Tiny C Associates, respectively. MAC/65, C/65, BASIC A4-, BUG/65, and OS/A+ are 
trademarks of Optimized Systems Software, Inc. 




Optimized Systems Software, Inc. 10379 Lansdale Avenue • Cupertino • California • 95014 • (408) 446-3099 



PAGE 92 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



Using the PERGOM Drive withDouble-Sided Disks 



by Kevin Lever 



I recently purchased a Percom Disk Drive as a first 
disk drive for my ATARI 800. 1 was quite impressed 
with the double density storage capacity when, in 
transferring my cassette-based BASIC games to disk, 
I found I was able to put all of the games on one disk! 
So, of course, I went out and bought a disk-based 
adventure game to find out what random-access files 
were all about. Here I found my first major obstacle: 
The adventure game consisted of three double-sided 
disks, six sides in all, but the disk drive is single 
sided. No problem on the 810 drive, true, but with 
Percom it's another story. 

It seems that the 810 by ATARI uses a timing 
sector, recorded at format time, to let the drive know 
where the disk is. However, most other systems use 
the little hole in the lower-right side of the disk, 
together with a properly oriented LED and sensor in 
the drive itself, to keep the system informed of disk 
position. Such is the case with the Percom disk drive. 
So, when a program is recorded on both sides of a 
disk, the ATARI 810 drive cares nothing of the 
timing hole in the disk. It has no trouble locating 
side-two data. But now consider the Percom unit: It 
always expects to find the timing hole in the lower 
right corner when the disk is inserted into the drive. 
Now, if we flip the disk over to read side two, the 
timing hole will be on the lower left. The LED and 
sensor in the disk drive sees only cardboard on the 
lower right, and can't read the disk! 

An industry-standard drive equipped to read 
either side of a disk should have two sensors, one 
positioned to read the timing hole at the lower right, 
and the other located at the lower left. The user flips 
a toggle switch on the front panel to inform the drive 
which side of the disk it will be reading. The Percom 
single-sided drive is not so equipped. So what do we 
do with commercial software recorded on both sides 
of a diskette? We make an extra hole in the disk 
jacket! Now, either way the disk is inserted, the 
sensor will be able to locate one of the timing holes. 
The procedure is very simple, but care must be 
exercised to avoid damaging the diskette or getting 
fingerprints on the magnetic surface. If this happens, 
you might as well throw that disk away. CNot so fast. 
See Charles Bachand's "Burp" program in Issue hlo. 
g.) However, if you are careful and methodical, you 
should have no problems. As a precautionary step, 
first wash your hands and then find a clean, 
uncluttered work surface. 



The first step is to obtain a "crashed" diskette, 
either from your own misadventures or from your 
local computer store. Odds are, if the store 
demonstrates programs for its customers, they will 
have a few disks in the wastebasket. You are going to 
make a template." Take the "crashed" disk and 
carefully slit open one edge of the disk jacket with a 
sharp knife. Remove the disk itself and throw it 
away. Save the jacket, and put a label on it reading 
"TEMPLATE" and add it to your library. 

Now it's fairly easy to modify your disks for use 
on the Percom drive. Retire to your handy work area 
with the template, the disk you're going to modify, a 
pencil, a hole punch, and a strip of paper. Refer to 
the diagram as your' proceed. Place the disk to be 
modified, flat on the table, label side up. The timing 
hole should be on the lower right. Now place the 
template over the disk, but with the timing hole on 
the lower left. Carefully match up the edges — 
accuracy is important — and mark the perimeter of 
the timing hole onto the disk jacket of the subject 
disk. Press very gently with the pencil. Now flip 
over the subject disk and repeat the procedure to 
make a mark on the lower right, directly behind the 
mark on the other side. This is where you will punch 
the new hole. 

The idea is to punch a hole through the disk jacket, 
but not through the disk itself. That is the only 
tricky part, and you might try it once on a disk you 
don't care too much about. You are going to have a 
insert one part of the hand punch between the disk 
jacket and the disk itself, once on each side. I 
recommend slipping a strip of paper inside the disk 
jacket to protect the disk surface. Again, refer to the 
diagram. (You might also make sure your punch isn't 
magnetized!) If you damage the disk surface or warp 
the disk, it will be ruined, so don't blame me if you 
fail to heed this warning. Now slip the punch inside 
the disk jacket and punch a hole where you made the 
mark. Again, punch the jacket only. Repeat the 
procedure on the other side. You can now read both 
sides of the disk! 

The procedure I have described will enable you to 
use commercial software which is recorded on two 
sides of a disk. It will also enable you to use both 
sides of your own disks. It will almost definitely void 
the warranty on your commercial software, so check 
with the retailer and be advised. When writing to 
both sides of your own disks, remember that side 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 93 



two was not certified, so you're on your own. I have 
had no problems at all. 

I guess there is some advantage to owning an 810 



drive. But for me, the capacity to use double density 
far outweighs the few minutes it takes to do the 
modification. Good luck! D 




ATARI 810 is a 
trademark of 
ATARI, INC. 

Percom RFD is a 
trademark of 
Percom Data 
Company, Inc. 



ATTENTION PROGRAMMERS! 

A.N.A.L.O.G. Computing is interested in programs, articles, and software review submissions 
dealing with the ATARI 400 and 800 home computers. If you feel that you can write as well as you 
can program, then submit those articles and reviews that have been floating around in your head, 
awaiting publication. This is youropportunitytoshareyour knowledge with the growing family of 
ATARI computer owners. A.N.A.L.O.G.'s rate of pay is comparable to many other computer mag- 
azines. All submissions for publication must be typed, upper and lowercase with double spacing. 
Program listings should be provided in printed form, and on cassette or disk. By submitting 
articles to A.N.A.L.O.G. Computing, authors acknowledge that such materials, upon acceptance 
for publication, become the exclusive property of A.N.A.L.O.G. If not accepted for publication, 
the articles and/or programs will remain the property of the author. If submissions are to be re- 
turned, please supply a self-addressed, stamped envelope. All submissions of any kind must be 
accompanied by the author's full address and telephone number. Send programs to: Editor, 
A.N.A.L.O.G. Computing, P.O. Box 23, Worcester, MA 01603. 



PAGE 94 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



INSTALLING 
YOUR OWN 




CHIP 



by Richard Herring 



By now everyone has heard of the glories of the 
new GTIA chip for the ATARI. Providing twelve 
graphics modes (0-11) rather than nine (0-8), it will 
allow some dramatic effects. But unless you have a 
fairly new ATARI, the new graphics chip will have to 
be purchased and installed. Purchase is easy — the 
chips are now available for $25 to $30. Installation, 
although not difficult, will require disassembly of 
your computer. If you have the nerve (and the desire 
to save a service charge) here's how to do it. 

First, let's take an imaginary tour of your 800's 
innards. They're housed in a two-piece plastic case. 
Nothing is attached to the case bottom. We'll 
eventually take everything out of the case top except 
the keyboard. The case top has a removable ribbed 
top cover. The cartridge door, which you use to 
access BASIC, is the front third of this cover. Under 
the rear portion of the cover is the memory bank 
(lOK ROM &L 8 to 48K RAM). 

Lying horizontally under the keyboard and the 
memory board is the mother board. This is the 
largest circuit board in the computer. It runs from 
front to back and is about half as wide as the 800 's 
case. Attached to the right side of the mother board 
is the power supply board, one side of which is the 
black side panel of your computer. That panel has 
the on/off switch, power in jack, etc. 

The last board in your 800, and the one you'll be 
plugging the GTIA into in a few minutes, is the 
personality board. It plugs vertically into the mother 
board and stands behind the memory board. Among 
the several chips it holds are three 40 pin chips which 
appear quite similar. They are the 6502 CPU, in 
socket A303; Antic, in A302; and CTIA, in A301. 

Before you start doing anything inside your 
computer, make sure you have a good working 
environment. You need a clean work area at least 5 to 
6 times the size of your 800. You should avoid static 
charges by working in an uncarpeted area, not 
wearing clothes that create static, not walking 
around during the installation process and 
grounding yourself before you begin. 

You should read through these steps completely 
before you begin. Do not handle the pins of chips or 
the connectors of boards unnecessarily since the oil 
on your skin does not help make good connections. 
The only tools you will need are a medium size 



Phillips screwdriver and a flat, strong tool to pry out 
the chip — a standard screwdriver or nailfile will 
work. Make sure that any metal tools you use are not 
magnetized. You will remove a total of eight 5/8 inch 
and twelve 3/8 inch Phillips screws. 

Last, before you do anything remember that this 
process will void your warranty. 

1 ) Disconnect the power supply cable, TV switch 
box cable and peripheral cable. 

2) Place the 800 in your cleared working area. 

3) Open the cartridge door and remove any 
cartridges (BASIC, etc.). 

4 ) Rotate the two black clamps , at the left and right 
rear corners of the cartridge slots, outward. 

5) Lift the front edge of the ribbed top cover 
slightly and slide it toward you. Place it aside. 

6 ) Turn the black clamps in as far as possible . They 
must be in this position when the circuit boards are 
removed from the 800 case top. 

7) Remove the lOK ROM cartridge and all RAM 
cartridges. Place them aside. 

8 ) Turn the 800 over and, supporting the keyboard 
side, remove the five (5/8 inch) recessed screws. 

9) Remove the plastic case bottom by lifting the 
rear first so that the front will clear the joystick jacks. 

10) Unplug and remove the speaker which lies under 
the front left corner of the 800. 

11) You see a metal bottom over the mother board. 
The power supply board is uncovered along the side. 
Remove the (5/8 inch) screw from the power supply 
board. The screw lies approximately under the 
START key. 




PHOTO 1 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 95 



12) Remove two (5/8 inch) screws from the outer 
lip of the metal case — one on the left, one on the 
right. Do not remove the nine screws which hold the 
metal bottom yet. 






PHOTO 2 



PHOTO 4 

20) Supporting the power supply board, remove 
three (3/8 inch) screws which attach it to the metal 
case. 



13) The 800 should still be upside down. Move it so 
the keyboard is facing you and 12 inches in from the 
edge of your table. Slowly lift the metal case 
(covering the mother board and attached to the 
power supply board on the left) and flip it over 
toward you. NOTE the six inch ribbon cable which 
attaches the mother board to the case top roughly 
between the second and third joystick controller 
jacks. Do not bend it. It is stuck in place with padded 
tape which can pull loose. 

14) If the mother board and its metal case will not 
come out check the 2 black clamps which held the 
ribbed top cover over the memory bank. 

15) Set the metal case down on its bottom cover. 

16) Unplug the ribbon cable from the mother board. 

17) Place the 800 's case top (with the keyboard and 
ribbon cable) aside. 

18) Follow the cable from the TV switch box to 
the point where it plugs (RCA) into the power 
supply board. Unplug it from socket J203. 




PHOTO 3 

19) Unplug the rust colored connector (at J202 on 
the power supply board) near the fourth joystick 
jack. 




PHOTO 5 

21) NOTE the power supply board is still attached 
to the mother board by a 22 pin connector at socket 
J201. Find this connection near the fourth joystick 
jack. Gently and evenly lift the power supply board 
being careful not to bend any of the pins. Pressure 
will be needed only at the 22 pin connector. 




PHOTO 6 

22) Place the power supply board aside. 

23) Turn the metal case (covering the mother board) 



PAGE 96 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



upside down. 

24) Supporting the side with the joystick jacks, 
remove the nine (3/8 inch) screws from the sheet 
metal bottom of the metal case. The mother board is 
attached to the metal bottom. The metal case top is 
now disconnected. 




PHOTO 7 

25) Holding the metal case top securely to the 
mother board, turn the unit over (right side up). 

26) Lift the metal case top STRAIGHT UP and place 
it aside. 




PHOTO 8 

27 ) The personality board is now accessible standing 
behind the memory board. Carefully, hold the 
mother board down and pull the personality board 
straight up and out of its socket. 




28) Lay the personality board flat with the chips up. 
Locate the CTIA chip in socket A30L It is the 
middle of the three large chips. 




PHOTO 10 

29) Carefully remove the CTIA chip. You can pry it 
from the ends with a strong flat tool — a standard 
screwdriver or nailfile will work. Alternate prying 
each and only a little so the chip comes straight out. 

30) Note that the lower end of socket A301 (toward 
the personality board's gold connectors) has a round 
notch. This notch MUST align with a similar round 
notch in the end of the GTIA chip when it is 
installed. 




PHOTO 9 



PHOTO 11 

31) Set the new chip in its socket. The two rows of 
pins may be flared too wide. If so, place the chip on 
its side on a hard surface. Carefully rotate it down 
against the pin ends to bend them closer together. 
Seen from the end, the pins should be perpendicular 
to the body of the chip. 

32 ) Align the GTIA chip so that all pins are correctly 
placed in the socket. The round notch in the end of 
the chip MUST align with the notch in the socket. 

33 ) Pick up the personality board and push the chip 
straight in. You may need a soft clean cloth to put 
against the bottom of the board to protect it (and 
your fingers). When the chip is all the way in (it may 
snap into place!) it MUST be seated as close to its 
socket as the other chips are to theirs. Compare to 
make sure the GTIA is fully seated. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 97 



34) Plug the personality board back into the mother 
board. The chips face the rear of the computer (away 
from the memory bank). You may need to rock it 
slightly from end to end to make sure it is in all the 
way. 

(SEE PHOTO 9) 

35) Place the metal case top back over the 
personality board and on the mother board. 

(SEE PHOTO 8) 

36) Holding the mother board and its metal case top 
securely together, turn them upside down. 

37) Supporting the side with the joystick jacks, 
reinstall the nine (3/8 inch) screws. 

(SEE PHOTO 7) 

38) Turn the mother board over (right side up). 

39) Reposition the power supply board. Note the 
two alignment pins on the lip of the metal cover. 
Making sure all pins on the 22 pin connector at 
socket J201 are aligned, push it gently, evenly back 
together. 

(SEE PHOTO 6) 

40) Reinstall three (3/8 inch) screws which hold the 
power supply board to the lip of the metal case. 
There are two holes toward the back of the board. 
Do not put a screw in the rear hole. 

(SEE PHOTO 5) 

41 ) Replug the RCA plug (from the TV switch box 
cable) to the power supply board at socket J203. 

(SEE PHOTO 3) 

42 ) Replug the rust colored connector at socket J202 
(near the fourth joystick jack). The red wire goes 
toward the joystick jack, the orange wire toward the 
rear of the 800. 

(SEE PHOTO 4) 

43) Position the mother board right-side up, with 
the joystick jacks away from you. Position the plastic 
computer case top upside down, with the keyboard 
side near the joystick jacks. 

44) Making sure all pins are aligned, replug the 
ribbon cable. 

45 ) Make sure the two black clamps which hold the 
ribbed top cover are turned in as far as possible 
(locked position). 

46) Turn the mother board assembly over into the 
plastic case top. Be careful not to damage the ribbon 
cable and to align the contact switches in the four 
yellow keys (START to RESET). 

47) Reinstall the (5/8 inch) screw which holds the 
power supply board to the top of the 800's case just 



below the START switch. 

(SEE PHOTO 1) 

48) Reinstall two (5/8 inch) screws which hold the 
lip of the metal case to the 800's plastic case top. 
These screws go on the right and left side holes 
nearest the center. The rear holes are for the screws 
in the plastic case bottom. 

(SEE PHOTO 2) 

49) Replace the speaker in its hole and plug it in. The 
number on the plug goes toward the 800's bottom. 

50) Replace the plastic case bottom. Align the front 
first so the joystick jacks fit in their slots. Watch, as 
you lower the rear of the case bottom, that the 
speaker remains positioned properly. When the case 
bottom is in position, check that the TV switch box 
wires goes through the hole in the rear of the case. 

5 1 ) Supporting the front (keyboard) side, replace 
five (5/8 inch) screws into the plastic case bottom. 

52) Turn your 800 right-side up and reinsert the lOK 
ROM cartridge and 8K or 16K RAM cartridges. (If 
your boards do not have covers, be sure the chips 
face the rear of the computer.) 

53 ) Turn the black clamps out and replace the ribbed 
top cover. Turn the clamps in to lock the cover in 
place. 

54) Reinstall BASIC (or other cartridge) and close 
the cartridge door. 

55) Reconnect the cable to the TV switch box, the 
power cable and the peripheral cable. 

You are now ready to try graphics modes 9, 10 and 
11. If you have any trouble, check first that all 
external connections are good, that the channel 2-3 
switch is correctly set and that your television is 
properly tuned. If you still have problems, check 
that ROM and RAM cartridges are properly seated. 
If all else fails, walk through the installation process 
again to make sure that all internal connections are 
good and that the GTIA chip is properly seated. 

Although the GTIA is downward compatible (all 
software designed for the CTIA will still run) you 
may have a few nice surprises. Check the new gold 
color of the mazes in Jawbreaker or Mouskattack for 
examples. D 



// you are unable to obtain a GTIA chip from | 


your 


'.ocal dealer or repair shop, you may order 


them. 


directly from A. N. A. L. O. G. at $25.00 


each 


To order send check or money order to: 




GTIA 




P.O. Box 23 




Worcester, MA 01603 



PAGE 98 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



SCOTT ADAMS' ADVENTURES 1-12 

Adventure International 

A Division of Scott Adams, Inc. 

Box 3435 

Longvk'ood, EL 32750 

24K Tape $19.95 



by Brad Griffin 

>. The twelve original Scott Adams' Adventures are 
a collection of superb and entertaining text 
adventures. The style of writing is the same 
throughout, filled with clever puns and exceptional 
puzzles. With the change in scenarios, each 
adventure maintains its uniqueness, much like a 
collection of Jack London stories. Though the 
difficulty varies, the quality is always high. If one 
enjoys any of the adventures, the others will not be a 
disappointment. Each of the twelve adventures will 
be briefly reviewed. 

#1 ADVENTURELAND 

A journey through a strange land filled with 
dangers, ranging from a fire-breathing dragon to 
deadly chiggers. Deadly chiggers? There is a way to 
avoid the peril of infection from their bites, but can 
you find it in time? Clues abound in this adventure 
that challenges you to find thirteen ^TREASURES* 
and store them in the correct location. Considered a 
moderate level adventure in difficulty, fitting the 
pieces of this puzzle together will not be 
accomplished overnight. The game-save feature (as 
with the other eleven) comes in handy when you are 
just about to try a potentially dangerous move. After 
several hours of trial and error, you begin to think 
like Scott Adams, — perversely. You find your way 
into an elaborate maze and, without too much 
difficulty, discover the treasures that it hides. You 
seem to be catching on to this game fairly easily. 
Then, (uh-oh), you cannot get out of the maze! You 
should have saved the game before you entered it. 
No wonder it seemed so easy; it was a trap. You will 
be much more careful the next time. Come on 
ADVENTURELAND, this time the challenge will 
be met. 

#2 PIRATE ADVENTURE 

The easiest of the twelve adventures, this is an 
ideal introduction to the text adventure. The liberal 
use of hints enables the first time adventurer to 
proceed without too much frustration. By the end, 
you are ready for greater challenges. If you are stoic, 
or masochistic, the hints need not be requested. 
Starting in a London flat, a magic excursion takes 
you to far away places in search of Longjohn Silver's 
treasures. There are no mazes, but danger exists just 
ahead. Alligators, deadly mamba snakes, a 
mongoose, and a parrot are but a few of the obstacles 



that block your way. "Aye matey. Ye must use your 
'ead if me treasures Ye 'opes to find. Yo-Ho-Ho and a 
bot'leof. .." 

#3 MISSION IMPOSSIBLE 

"Good morning Mr. Phelps. Your mission 
(should you decide to accept it) is to prevent this 
automated nuclear reactor from being destroyed by a 
saboteur's TIME BOMB!" Attention all honorary 
IMF members. This adventure is for you. There are 
no tricks involved here; no magic either. Just a clear 
head and a keen eye are required to solve this one. 
Everything you need is in a manila envelope. Or is it? 
A strong heart is mandatory as the tension mounts. 
With each move, the reactor comes one step closer 
to oblivion. Unlike many of the other adventures, 
the solution here is arrived at using logic and 
comimon sense. Sounds simple, huh? Click. . . Did 
you just push the wrong button? 

#4 VOODOO CASTLE 

Written by Alexis Adams, this adventure is eerily 
authentic. Count Cristo has been cursed. You must 
remove the curse and foil the worshippers of the 
dead. West African artifacts and modern-day labora- 
tory chemicals paradoxically weave their magic in 
your attempt to reverse the spell. No mazes here, but 
magic is everywhere to help and to hinder your 
undertaking. A medium named Maegen may be 
helpful. Maegen? Maegen Adams? Written by Alexis 
Adams? For Scott Adams? Is this the Adams Family? 
No, it couldn't be. That was Addams. Walking 
through this castle with its dusty corners, 
mysteriously slamming windows, and animal heads 
makes you wonder if it is not more than a 
coincidence. Be careful, doors may close behind 
you and you will have a devilish time getting free. 
"Double, bubble. . .Toil and Trouble. . . " 

#5 THE COUNT 

You awaken in a strange bed. There is a heaviness 
in the air. Exploring the adjacent rooms, you find a 
watch (keep close track of the time), a clove of garlic 
(Huh?), Nodoz pills, . . .what is all this? A coat of 
arms ... a closer look ... it is the family crest of 
Dracula! A surly mob outside makes you soon realize 
that you must destroy the evil Count Dracula. 
Where is he? Further searching reveals a 
bathroom. . . go ahead (tsk,tsk). Talk about your 
realism (excuse me for a minute). Yawn. Tired? Take 
a nap; you will feel much better. Hmmmm. Didn't 
sleep that well? You sure look pale, and what are 
those marks on your neck, as if I didn't know. Time 
is of the essence (so is the garlic). Find the vampire 
and destroy him, but you do not have all day. . .or 
night. Better play this adventure during the daylight 
hours, if you are the nervous type. You cannot afford 
to bat an eye, or is that supposed to be "eye a bat?" 

#6 STRANGE ODYSSEY 

This outer space adventure places you at the outer 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 99 



edge of the galaxy. Your goal is to gather a fantastic 
collection of treasures and return to Earth. SF nuts 
will thoroughly enjoy the challenge. Just getting out 
of the space ship is quite an undertaking, and that is 
only the beginning of an exciting expedition; an 
expedition that takes you through a Jovian mining 
colony to an intergalactic zoo with bizarre 
inhabitants. The hazards of a methane snow storm 
may not deter you, but do not get too close to the 
centurion slime trees. Persistence is rewarded in this 
adventure. Clever solutions again, but with the 
proper mindset, you will solve this puzzle in just a 
few hours. However, hours at the edge of the galaxy 
may really be days here on Earth. Blast off! ! 

#7 MYSTERY FUN HOUSE 

The idea of being trapped in a fun house is usually 
not terrifying, but it is here. First, you have to get in, 
and you have no money. Do not give up; you will 
find some. This adventure does not match the others 
in excitement or challenge. Mazes, the time factor, 
and buttons to be pushed are much the same. If this 
were one's first encounter with these adventures, it 
might be interesting. It offers the typical dilemmas 
expected, and the solutions are predictable. The best 
reason to play MYSTERY FUN HOUSE is to 
complete the set. Even Jack London slipped once in a 
while. 

#8 PYRAMID OF DOOM 

Lost in the desert, you see a pyramid. Entry is 
forbidden, and a curse will fall upon you if you defile 
the ancient resting place of the pharoahs. A 
collection of *TREASURES* await you within the 
stone edifice. Discovering the location of all of them 
is quite difficult. The obstacles preventing you from 
reaching your final goal are formidable. Several 
hours (to days) will be necessary to find them all. 
While you are away from the adventure physically, 
your mind will constantly return, trying to figure out 
how to get past the Giant Oyster, or how to dispose 
of the dreaded Purple Worm. PYRAMID OF 
DOOM is one of the best text adventures written. 
The combination of easily-found treasures and 
seemingly impossible clues to others gives it a 
mixture that keeps the adventurer coming back until 
it is finished. Some magic is involved, but no mazes 
here. It must be magic if one dies of dengue fever 
without being bitten by the mosquito, Aedes ae^ypti, 
which transmits this viral disease. Well, other than 
that, it is very realistic and entertaining. 

#9 GHOST TOWN 

The search for thirteen treasures in a deserted 
ghost town is going to be a long one. The most clever 
of all the Scott Adams' Adventures, GHOST 
TOWN requires all of your brain power to solve. 
One may go for days without progress ( it often helps 
to put it away for a time, in order to let new thoughts 
ferment). How long has it been since you used Morse 
Code? Do you have an old Boy Scout Handbook 



close by? Finally, you can get that (expletive deleted) 
Purple Worm. Remember the way to make 
gunpowder (a noble gesture)? A special bonus 
scoring system is offered as a part of this adventure, 
but it is really of little consequence to the true 
adventurer. Completion of this adventure is 
satisfying enough. "Smile when ya' say that, 
pardn'r." 

#10 & 11 SAVAGE ISLAND — PART I & II 

A challenge for the expert adventurer, this two- 
part adventure offers everything you could hope to 
find in this or any other world. This surrealistic 
journey begins on a small island and takes you to 
undreamed-of places in search of a secret. You must 
survive Hurricane Alexis, volcanoes, a 
Tyrannosaurus, and many, many more dangers, just 
to discover the password enabling you to play PART 
II. You must be ready for anything as your journey 
continues. If you are not ready for anything as your 
journey continues. If you are not ready, your soul 
will never rest easy. Mazes, dangers, and puns are all 
here in a mammoth adventure that will not be 
finished without investing a great deal of time. It is 
well worthwhile. Where else can you be a part of 
psychotransfiguration? 

#12 GOLDEN VOYAGE 

The final adventure in the series has you searching 
for the secret to make an aging king young. You only 
have three days to accomplish your mission, and you 
must learn how to sail a ship to the correct location. 
Though a bit of a letdown after SAVAGE ISLAND, 
all the elements of a good adventure are present. If 
you have completed the other eleven adventures, 
this one is not too difficult. A word of warning: keep 
your eye on the Cyclops. He has his on you! D 



WANT 

TO 

SUBSCRIBE? 

CALL 

TOLL FREE 

1-800-345-8112 

InPenna. 1-800-662-2444 



PAGE 100 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 




H 






16K cassette 24K disk 



by Tom Hudson 



When looking over the reader survey cards sent in 
from A.N.A.L.O.G. #9, one quickly notices a 
common request: more assembly-language game 
programs. In an effort to satisfy those avid video- 
gamers out there, I have written "Fill 'Er Up," a 
public-domain assembly-language game. 

PROGRAM LISTINGS 

This article contains two program listings. Listing 
#1 is a BASIC program which, when run, will build 
the machine-language game in memory and execute 
it. Listing #2 is the assembly-language source code 
for "Fill 'Er Up!," for those who are interested in 
assembly-language programming. 

To play the game, type listing #1 into your 
computer. I realize that those DATA statements 
aren't fun to type in, but they are a necessary evil. 
This game differs from previous A.N.A.L.O.G. 
games in that this data is listed in hexadecimal (base 
16). If I had listed it in decimal, 'Till 'Er Up!" would 



have required 24K memory on cassette. If you want 
to play the game, you have to pay the piper. . . 

After typing the BASIC program into your 
computer, SAVE it. When the program is RUN, it 
will transfer control to the "Fill 'Er Up!" machine 
code, which will wipe out the BASIC program. If this 
happens, you'll have to re-type the BASIC program. 
The program will warn you before it blows itself 
away. 

After SAVEing the BASIC program, RUN it. The 
program will READ the data and check it to make 
sure it was typed in correctly. Two types of error 
messages may be displayed. A BAD DATA error 
means that the line indicated was mistyped. A 
MISSING LINE message indicates that you left a line 
out completely. It takes roughly 2 minutes for the 
program to check the DATA. 

If the program is typed in correctly, it will warn 
you to SAVE it before it starts the game. Type 
"YES" to this message to continue. 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 101 



GAME DESCRIPTION 

You have been assigned to build a series of water 
reservoirs in uncharted territory. Unfortunately, an 
electrified starfish (don't boggle; read on) is 
patrolling the area. Using your joystick, you must 
maneuver yourself around on the screen, building 
walls to hold the water, while avoiding the starfish. 




You start out on the white border surrounding the 
planned reservoir area. You may move around on 
these white walls by moving your joystick in the 
desired direction. You can build a reservoir wall by 
moving into the black "uncharted" area while 
pressing your joystick button. The walls you make 
can be any length, and must be terminated at a white 
wall. When you finish a wall by hitting a white wall, 
the area you have enclosed will fill with water. Do 
NOT run into the wall you are building or you will 
be destroyed. If the starfish hits you or any part of 
the wall you are building before you complete it, you 
will be destroyed. On levels 1,2,4,7,12 and 13 you 
wil be safe from attack when standing on a white 
wall, but on other levels the starfish can destroy you 
on contact at any time! 

At the bottom of the screen are several informa- 
tion displays. "TGT" indicates the TARGET area 
you must fill with water before you complete the 
level. "CUR" indicates the CURRENT area you 
have filled. Once CUR reaches TGT, you have com- 
pleted the level and are awarded points. SCORE 
indicates the number of points you have gained. At 
the end of each level, the computer will give you 2 
points for each unit over the target you have filled. If 
the TARGET amount is 8000 and you fill 9000 
units, you receive 2000 points. "Fill 'Er Up" may be 
paused at any time by pressing the space bar. 

This game contains 16 levels of difficulty. The 
level number is shown in the lower left corner of the 
screen. 

You have 3 lives, shown in the lower right corner 
of the screen. Good luck! D 



i REM **# FILL 'ER UP' *** 

10 DflTO 8,1,2,3,4,5.6,7,8,9,8,8,0,8,0, 

0,0,18,11,1^,13,14,15 

20 DIM PR0G5C3248) ,DftTSt91),HEXC22):F0 

R K=:e TO 22:REftD N : HEK (X3 =N : NEXT XlLIN 

E=998:PMTR=l:TRflP 60 

25 LIHE^LIME+IO:? "LINE :"; LINE ;BEAD Drt 

T$:IF LENfDATSjOge THEN 110 

28 DftTLIN=PEEKtl833+PEEKtl84J«256:IF D 

ftTLIHOLINE THEN ? "LIME "JLINE;" MISS 

ING!":ENI> 

30 FOR K=l TO 89 STEP 2 :Dl=ftSC CDftTS CX, 

H5 3 -48 : l>2=:ft5C fDOTS (X+1 , X + IJ J -48 : BYTE=H 

EXCD13«16+HEXCD2J 

40 PR0GS(PNTRJr:CHHS(BYTE3 : PNTR = PNTR + 1 : 

TOTOL=TOTftL+BVTE:HEXT X.'READ CHK5UM:IF 

TOTfliL=CHKSUM THEN 25 
50 GOTO 110 

60 IF PEEKC195)<>6 THEM llO 
70 J. "QMARNING: MftKE SURE PROGROH IS B 
EEIiS!":? :? "READY TO RUN IJiH^JI < MM T 
;:DIM VMS(3J:IHPUT VMS 

80 IF YNS="VES" THEM a=USR CODR CPR0G$} , 
0DRCPR0G:S)1 :EN& 
90 END 

118 ? "BfiD DflTfl: LINE ";LINE:END 
1008 DftTfl 6868858168858Ofl9008582fl91485 
83ft008B1889182ft5801869fll8580fl58169e085 
8ia58218e9ei8582a583e90e,4894 
1010 DOTA 8583C92OD0DEfi582C989D8D82865 
E4fl9H8D6F02fl9O18D2C208D442020E614O940 
8DE71Fft9808DE81FiQ9D0ft204, 10469 
1020 DflTfl 9D241F9D2FlFCftl0F7fl2859D401F 
CA10FAA9ee8D442085D48D46208DlED08D2F02 
8D0ED48Dft81F8DO8D2fl2859D, 15237 
1830 DATA 9DlFCftlOFO80fl61Ffl9O38DflClF89 
9e8D471FO90fl8DC402ft9248DC502fl9948DC602 
fi9C480C702fi9888DC802ft976, 28378 
1840 DATA 8DC382A9348DC882A9BB8D3e82A9 
lE8D3102ftOBEA21Dft9062e5CE4A9108D07D4A9 
2E8D2F02A9038D1DD0A9408D, 25144 
1050 DATA OED44C4D15A90OA27F9D88119DO8 
129D80129DO8139D8013CAD0EE60A5CE0A85CB 
A98085CC06CB26CC86CBA5CB, 30257 
1860 DATA 85CF26CCA5CC85D805CB26CC06CB 
26CCA5CB1865CF85CBA5CC65D085CCA9801865 
CB05CBA93065CC85CCA5CD29, 36605 
1070 DATA 03AAA5CD4A4A1865CB85CBA5CC69 
0885CC6eA20e86CDA2O0d6CE2OFD14A6CEA9eO 
A02791CB8810FBE8E056D0EB, 42651 
1080 DATA A9038D2620AE2620BD122085CDBD 
162O85CEBDlA208D2720BDlE2O8D282OBD222e 
8D292020FD14BDFElFA0e01i, 46785 
1890 DATA CB91CBA5CDA86D272885CDA5CE18 
6D282e85CECE2920D0DFCE262010BBA95885O5 
A95485D6ADA61F1869018DA9, 52357 
1100 DATA 1FA90O8DA41F8DA51F8DAA1FA9FF 
8DA31F20E719AD7A2009908D371FAD792e8998 
8D381FAEA61FBD5C1F8DA91F, 57857 
1118 DATA BD6ClF8DAAiFBD7ClF8DFDlFA984 
8DA31F28E719A90O8D2C20Aft9D89289D8921CA 
D8F78D5O208D4F2OADA71FD8, 62242 
1128 DATA FBA9FD8D00D2A9FE8D02D2A9FF8O 
e4D2A9A38D81D28D03D28D05D2A988854DA5D4 
Fe22AEA61FBD8ClFD817A5D5, 68585 
1138 DATA 85CDA5D685CE28FD14AOOOBDeA20 
31CBDDFE1FF8034C7118A5D2F0064C3A1A4C18 
16A9O485D2AD78O28D4820AA,7368O 
1140 DATA BD5120i87D512885D7BD612ei87D 
612085D8e5D7F0DCA5D51865D78D2D20C99FB8 
O885CD38FD51208D2A20A5D6, 79251 
1158 DATA i865D88D2E28C955B8BB85CE38FD 
612e8D2B2B28FD14A0OOBD0fl2031CB8D4D208E 
4E20AD2A2O85CDAD2B2O85CE, 84075 
1168 DATA 20FD14A080BD0A2031CB48AD8402 
DOO668DO1E4CO41768DDFE1FD015AD4D2OAE4E 
2ODDFE1FDO0AAD2D2O85D5 AD, 88959 
1170 DATA 2E2085D64C1816AD4F20D0278D50 
2eAD48288D892BA9018D4F288DA81FA5D58D2F 
288D31288D3320A5D68D3828, 93283 
1180 DATA 8D32288D3420AD4D20AE4E28DD02 
28D0O34C7118AE5O2OAD4828DD892OFOOCEE5e 
2BE89D8928A9889D8921FE89, 97976 
1198 DATA 21A9838D2928A5D585CDA5D685CE 
2eFD14A8e8BlCB3D0E201D0Z2O91CBCE2920F0 
19AC582eBE8928BD51281865, 102886 
1200 DATA CD85CDBD61201865CE85CE4C6517 
A5CD85D5CD332090068D33284CA917CD3120Be 
038D3128A5CE85D6CD342090, 108021 



PAGE 102 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



1210 DATft 068D34204CC817CD3220B0038D32 

2eflE4E28«D4D20DDFElFFfl034Ci816fl90e8D4F 

2O20ftClflaOfl41F8»fl?lFflDft5, 112367 

1220 DOra iF81>flrtlFfl9eF8Dfl31F20E719fl901 

80492O205ei9fiEfl61FflDA41F38FD5OlF8Dfl51F 

ftDfl51FFD6ClF8DflfllF10034C. 116810 

1230 DfiTft 0316ODfi61FC50FFOO3EEfl61F0Efi9 

lF2EAfllFfl9FF8Dfl31F2OE719fl205O000B97920 

i87D9DlFC90fl300C38E90fl9&, 121336 

1240 DflTfl 9D1FFE9C1F4C431S9D9D1FC8CA10 

E2fl2O5BD9DlF09109D4OlFCaiOF5fl9O18D4420 

8D2C2020E614fl9408DE71Fft9, 126120 

1250 DflTifl 8O8DE81Ffl96O8D44284C4D15fl90O 

8l>01&28D03D28D05D2A9ei8D4620rt90F8l>4720 

ft90585D3ftD47208DOll)2ftil)0A, 130637 

1260 DOTft D2291F8DO0l)2flD8ftD229FO0D472O 

8DC5028r>C302fl5D3D0E0CE472010D7CEfiClFftl> 

flClF89908D471FC990D025fl9, 136026 

1270 DflTft 488D181Fft91F80191FiftDlF»02901 

D0F9<iDlFD02901F0F9fl9208DlSlFft91F8D191F 

4C39i4fi9ei8D2C20ADOflD229, 140313 

1280 DflTfl FEC99FB0F785CI>rtD0ftl)2297EC955 

B0F785CE2OFD14fl0OOBDea2O31CBD»FElFDODB 

2eE614ft5C»85D5a5CE85I>6fl9^ 147062 

1290 DftTfi O08D492OflDO81FFOlC2O5O19fiD2F 

2085CDfll>302085CE20FD14ft000BD8E2031CBlD 

FElF91CBft9248DC502A9OO8D, 151736 

1300 DftTfl 462O8DlE»085D44C0316ttD2F208D 

352OflD3O208D362Ofl9OO8D372OflE372OBO892O 

8»4fl20BD89218D4B2Oft9918D J 155802 

1310 DnTfl 3820ft9038D4C28flD352085CDflD36 

2O85CE20F&14fi000flD4920D810BI>0E2031CB91 

CB4Ca819A9OO8D4F2O6OBD0E, 160296 

1320 DftTfl 2O31CBlDFElF91CBCE4C20F01flftE 

4fl2OftD352O187D512O8D352eftD362O187I>6120 

8D362O4C7fll9EE3820ftD382O^ 164422 

1330 DflTfl CD4B20F002B0034C7519EE3720ftD 

3720CD5O2OF002BeB44C6119O204fl9eO9D792O 

CfllOFAfl284fl0flfllFDI>7F2eF0 , 169344 

1340 DflTO 04BOlO9008flDA91FDD8420B006Cfl 

10E94C261ftADft91F38FD84208Dfi91FADfiflilFFD 

7F208DftftlFFE79204CF319fl2^ 174451 

1350 DfiTA 84flCfl31F3OOCBD7928O9D899201F 

C8Cftl0F460fl5DlF0O34C1816flDFt)lF85DlflDE7 

lF38E9008REfllFflDE81F38E9, 179820 

1360 DftTft 2C8DE91FftD8flO2C9FO90O8OD0ftD2 

29874C6ftlflADEClFftA8DEBlFADE91F187&EDlF 

85CDflDEftlF187DF51F85CE2e, 18534 7 

1370 DATA FD14OOOOBO8A2831CBF0O7A9eF8D 

4120D0CCfl5CD18692C8DE81FA5CE18690l)8DE7 

1FADEB1F8DEC1F4C1816A901, 198346 

1380 DATA 8D442OA90O8D4O2OADE81F38E92C 

8&3928ADE71F38E98D8D3A28AE4828AD392018 

7D712e8D392885CDAD3A2ei8^ 194641 

1390 DATA 7D752e8D3A2885CE28FD14A888Bl 

CB3(>eA2eDDFElFFeODDD822OD0DlA9O08l>3F20 

4C2718AD48208D3F2e20861C, 198982 

1480 DATA 20B81BDDFE1FD08620E71B4CFF1A 

DDe228Dee62eE71B4C6DlB20FAlB4C081BA988 

8D432O28O61C2eB81BDDe220^ 202940 

1410 DATA D8O628E71B4C271BAD4328186901 

8D4320C903F00620FA1B4C2F1BAD4O208D3F2O 

20861C28BeiBDDFElFD80e28, 206695 

1420 DATA E71B4CFF1A20FA1B4C591B20121C 

A98O8D432O2OBO1BDDFE1FD0O620E71B4C6D1B 

AD43201869018D4320C904F8, 210842 

1430 DATA 062OFA1B4C751B2OCB1BDDO22OD8 

092O521CA9008D44206020FfllB20B01B4C991B 

AE3F20AD3920187D71208D3B, 214584 

1440 DATA 2O85CDAD3A20187D75208D3C2085 

CEA5CDC99FBOllA5CEC955B0OB28FD14A8OeBl 

CB3DOA2060A9O0A20060AI)3F, 219561 

1450 DATA 288D4020AD3B208D3920AD3C208D 

3A2O60AD3F2018690129038D3F2060flD3F2038 

E9O129O38D3F206OAD392O85, 223019 

1460 DATA CDCD332090068D33204C2fllCCD31 

20B0038D3128AD3A2085CECD342090e68D3428 

4C421CCD3220B003aD322020, 226876 

1470 DATA FD14AO00BDeE2O3iCBlD022O91C8 

6ea9e08D83D28D05D2AD342038ED322O8D4220 

AD312038E9O18D312O8D3D2O, 231053 

1480 DATA AD32203D3E2038E9O18D3220AD33 

201869G18D3320AD34201869018D3428A9008D 

ABlFft9O08D452020081DC9O2, 234473 

1490 DATA DOF9EE452O28081DC9O2FOF62981 

D0E6AD4520C901F005209C1DFODAAD3D2085CD 

AD3E2885CE28FD14Ae00BlCB, 239958 



1500 DATA 1DO62O91CBEEAB1F28081DC9OOF0 

EO29O1D8B6A9018D45202OO81DC9O0FOOA2981 

D8A6EE452O4CE21CAD4520C9, 244471 

1510 DATA 01D0034C931C209C1DDD8A28FOB4 

4C931CAD3D2O1869018D3D2OCD332OD058ADA4 

1F1860AB1F8DA41FADA51F69, 248804 

1520 DATA 008DA51Fft9008DABlFAD31208D3D 

2OA9088D452OA9868DOlD2AD422O8DeOD2F0O3 

CE4220AD3E201869018D3E2O, 253008 

1530 DATA CD3428F88DAD3D20CD3120D80868 

684C931C686860AD3D2085CDAD3E2085CE20FD 

14AOOenD8A2O31CBDDO220DO, 257702 

1540 DATA 0DBD0A2811CB91CBEEAB1FA90260 

DDFElFDOO3A9O160C9eOD0016OA9O36OAD3D20 

85CDAD3E2038E901CD3220F0, 262666 

1550 DATA 6D85CE28FD14A000BD0A2031CB68 

A900A20060ADFC02C921D00DA9FF8DFC02ADA7 

1F49FF8DA71FADA71FF0O34C, 267918 

1560 DATA 5FE4AD4120300D09A08D07D2A980 

8D06D2CE4128A5D3F882C6D3AD4428F0O34C5F 

E4A90085D4AD0CD02908F002 J 273196 

1570 DATA E6D4ADO4DO29O2FO02E6D48D1EDO 

A5D2F002C6D2A5D1F002C6D1ADE51FFO06CEE5 

1F4C3E1EA9018DE51FADE61F, 279495 

1580 DATA 186901C907D002A90O8DE61FACE6 

lFAEE71FA9089DFF119D8812B9ADlF9Deei2B9 

B41F9D0112B9BB1F9D0212B9^ 284165 

1590 DATA C21F9DO312B9C91F9D0412B9DO1F 

9D8512B9D71F9D0612B9DE1F9D0712ADE81F8D 

0OD0AD2C2OD831A5D518692F, 288845 

1600 DATA 8D83D0A5D6186910AAA9009D7D13 

9D7E139D82139D8313A9489D7F139D8113A9A8 

9D8013AD4620DO83EEC3824C^ 293747 

1610 DATA 5FE47878704DOO388DeD0DOD8DeD 

0DeD8D0DeD0DeD8DOD0D0D0D0D0D0DeD0D0D0D 

0D8D0D0DeD0DeD8D8D0D8D8D, 295012 

1620 DATA 0DeDeD8DODeD0D0D8DOD8D8DQDOD 

0D8D8D8DeD8DeD8D8D8D8DODODODODOD0DODeD 

ODODODODODODeDSDODODODOD^ 295597 

1630 DATA 6DCD0D2e46281F46341F4iBBlE34 

27341A008000000000002335321A000O0fl8OOfl 

2C361A0O8OOO33232F32251 A, 296939 

1640 DATA 0000000000000000000000808027 

212D25O88e2F3625320OOOOO8eee4OlOEO28F8 

D41004F8E0D4E044A870D41F, 299604 

1650 DATA 272E232A3027292A2E3O2E2F2F3O 

38048404030303820202020201010101010080 

018001018081018101888801,388310 

1660 DATA 0101800880800880888880008880 

08800e008081402ei0888482424320100884C2 

2424131888C82418181C1FF8, 301660 

1670 DATA 3818181338F81F1C182424C88818 

132442C2O408102043B102O4O81O2040O00OOO 

OO8OO80O8O61O1OOFFFFFF00, 303935 

1680 DATA 010Oei010001FFFFFF044O100401 

8e2O0862CO308C83Ce388Ce33FCFF3FC889E9E 

00008054540100FF0OO0O1O8, 386979 

1698 DATA FF9F559F55Oe888888888O8O60Oe 

00008000000000000000080800000060000000 

008000000068888800888800,307722 

1700 DATA 0000000800800000000081080088 

FF88OOOOOe8888O88e88886OeO0OOOOOOeOOOl 

FFOOeOOlOOFFFFOeOlBOeOOe, 308746 

1710 DATA Oe8e88eee8e0000327ei8A64E818 

80000088808880800808800880000000080008 

888008008888888888888880,389147 



(see D:CHECK 2, p. 26) 

1 DATA 23,955,92,427,745,192,786,445,4 
96,94,229,259,158,587,331,5731 
1820 DATA 494,554,427,296,789,628,347, 
594,792,797,637,422,363,402,567,8189 
1170 DATA 298,309,133,133,331,611,509, 
488 , 221 , 397 , 339 , 747 , 344 , 149 , 294 , 5215 
1320 DATA 85,256,474,378,896,521,202,2 
95 , 122 , 168 , 204 , 58 , 362, 981 , 960 , 5962 
1470 DATA 938,873,363,75,335,219,140,2 
99,489,89,576,361,363,130,239,5539 
1620 DATA 463,372,423,86,20,366,693,89 
3,961,810,5087 



;F!LL -ER UP' 

I 

■BY TOM HIJOSOW 
;A.N,A.L.O.G. COMPUTING «1f) 



•,ALPHA8ET!C CmSTA^rrS 



^ 


= 


'A '-420 


CB 


= 


'B'-f28 


CC 


= 


'■C'-$29 


CO 


= 


'D'-m 


CE 


= 


'E'-$28 


CF 


= 


'f'-m 


C6 


= 


■'iy-m 


CH 


= 


'■H'-I29 


CI 


= 


'['-$■29 


CJ 


= 


'J' -128 


CK 


= 


•■■k'-*-29 


CL 


= 


'I'-m 


CM 


= 


'■H'-$20 


CN 


= 


'N'-$2B 


CO 


= 


'n'-«20 


CP 


= 


'p'-«e 


CO 


= 


■■■0'-$29 


CR 


r 


'R'-$28 


CS 


= 


'S'-4-29 


CT 


= 


'T'-I28 


CIJ 


= 


'U'-42i3 


cy 


= 


'U--42e 


O-J 


= 


'W'-$29 


ex 


= 


'X'-J28 


CY 


= 


■•■Y'-$29 


cz 


= 


'•Z'-I28 


C03L 


:= 


':'-$20 


\m£ 


:m iTBis 


1 

LO 


= 


$CB 


HI 


= 


m. 


PLOTX 


= 


4CD 


PLOrr 


= 


4CE 


LOHLO 


= 


$CF 


HIHLD 


= 


■tD8 


mm 


= 


$01 


mjim 


= 


■JD2 


TIMER 


= 


$03 


DEADFG 


= 


$D4 


PX 


= 


$05 


PY 


r 


$D6 


XI 


= 


$07 


YI 


= 


$D8 



MISSLS 

PL8 

PLl 

PL2 

PL3 

DI3P 



Pf«REA+384 
PMAREA+512 
PWiREA+648 
P^ttREA+768 
PMAREA+896 
$3088 



LOC $1488 



;PR03RAH START 



2SCLP2 



jSYSTEM EQUATES 



^EY 

CWSOL 

PM8ASE 

CHBASE 

RAfJOm 

COLBK 

oiPFe 

COLPFJ 

D1PF2 

C0LPF3 

AUDCI 

AU0C2 

ALiOC3 

AUDC4 

AIJOFl 

AU0F2 

AIJ0F3 

AUDF4 

AUDCTL 

PRIOR 

AHRACT 

WIACTL 

DLISTL 

GRACTL 

WIEN 

PC0LR8 

C0LPH8 

COLPHl 

caPM2 

COLPfIS 

HPf]SP8 

HPOSPl 

HP1D3P2 

HP0BP3 

HPOSMB 

HITCLR 

pm 

PIPF 

P2PF 

P3PF 

P0PL 

P3PL 

STICK ■■ 

STRIG ■■ 



$2FC 

$D81F 

$0487 

$82F4 

$028A 

$E45C 

$E45F 

$2C8 

$2C4 

$2C5 

$2Cs 

$2C7 

$0281 

$0203 

$0285 

$0207 

$0208 

$0282 

$0284 

$D20i 

$0288 

$826F 

$40 

$22F 

$239 

$0810 

$O40E 

$0812 

$2C8 

$2CI 

$2C2 

$2C3 



jMISCELLANEUJS HEMORY \mr£ 
^1AREA = $1009 



= $0801 

= $0082 

= $0003 

= $0064 

= $08 IE 

= $0094 

= $0885 

= $0904 

= $0887 

= $O08C 

= $D80F 

= $278 

= $284 

ORG $6000 



S3 



;THIS CODE, WHEN CALLEO BY BASIC, WILL 
;Ha'E THE 'FILL 'ER OP'' CODE TOITS 
;PROPER LOCATHDN ($1489) AND EXECUTE IT. 



I^'ROG 



DDPYLP 



PLA 
PLA 
3TA 
PLA 
3TA 
LOA 
3TA 
LOA 
3TA 
LDY 
LOA 
STA 
LOA 

qLC 

ADC 
STA 
LOA 
ADC 
STA 
LDA 
CLC 
ADC 
STA 
LDA 
ADC 
STA 

mp 

Bf€ 
LDA 
OiP 
8NE 



$31 



lt$88 

$32 

)t$14 

$33 

lie 

f$38),Y 

($82) ,Y 

$39 

<tl 

$88 

$81 

«8 

$81 

$82 

ttl 

$32 

$83 

m 

$83 

«DIR,/256 

COPYLP 

$82 

#DIR&255 

COPYLP 



;DISi:>^RD 
■PULL THE 
;ADDRE3S OF 
jTHE HOLDING 
; STRING. 
;SET UP 
jDESTINATION 
iADDRESS m 
■;PA6E ZERO. 

jCOPY THE BLOCK 
;0F MBIORY. 



AT E^jO YET-:' 

NO' 

WELL, mYBE. 

AT B^D'' 

NOPE! 



imiN PROGRW STARTS HERE 



; ASSEMBLER WILL 
;PLrr IT HERE 



START JSR 
LDA 
STA 
LOA 
STA 
STA 
JSR 
LDA 
STA 
LDA 
STA 
LDA 
LDX 

ZSCLP STA 
STA 
DEX 
BPL 
LDX 



$E465 

lt$]l 

PRIOR 

HI 

SHOOFF 

FILLW 

PfCLR 

UA 

STRH6T 

#128 

STRHOR 



CMSLP 



#4 

SC0LIN+4,X 

SC0LIN+15,X 

ZSCLP 
«5 



;!NIT SOWS 
;P/M PRIORITY 

;DWT SHOJ 

; PLAYER OR STAR 

;UE STILL MUST 

; CLEAR P/M AREA 

jAND SET UP THE 

jSTAR'S HEIGHT 

iAf^D 

iHORIZiMAL POSITIW 

jNW LET'S 

iZERO OUT 

;THE SCORE 

;AREAS! 



phi:lr 

PHICLR 



STA 

DEX 

8PL 

LDA 

STA 

STA 

STA 

STA 

STA 

STA 

STA 

STA 

LDX 

STA 

DEX 

BPL 

STA 

LOA 

STA 

ORA 

STA 

LDA 

STA 

LOA 

STA 

LOA 

STA 

LM 

STA 

LDA 

STA 

LDA 

STA 

LOA 

STA 

LDA 

STA 

LOA 

STA 

LDY 

LDX 

LDA 

JSR 

LDA 

STA 

LW 

STA 

LDA 

STA 

LDA 

STA 

..IMP 

LDA 

LDX 

STA 

STA 

STA 

STA 

STA 



3C0LN2+r2,X 
ZSCLP2 

m 

FILLCfJ 

DEADFG 

NOCCHG 

HITCLR 

D^WCTL 

NMIBI 

HASDRN 

AUDCTL 

m 

SCORE, X 

CMSLP 

LB^EL 

#3 

LIUES 

»$90 

SC0LN2+1? 

S$0A 

COLPF0 

«$24 

COLPFl 

#$94 

C0LPF2 

#$C4 

C0LPF3 . 

#8 

COLBK 

#$76 

C0LPH3 

#$34 

C0LPM8 

»DLlST4-255 

DLISTL 

IDLIST/25i 

DLISTL+1 

«irfl^RPT&255 

#INTRPT/256 

#6 

SETU&; 

IPMAREA/256 

Pf-1BASE 

#$2E 

DflACTL 

#$3 

GIWCTL 

«$40 

miBJ 

CLRDSP 

#0 

#127 



MISSLS, X 

PL8,X 

PL1,X 

PL2,X 

PL3,X 



;THESE ITEMS 
;MUST BE SET 
■TO ZERO ON 
; STARTUP OR 
■ELSE UE'LL 
•Mm UP UITH 
jWSTY THINGS 
;WPPBI!NG' 

;LET'S ZERO 
-m THE SCORE 
sCOLtTTER... 

iiWD LEVEL «' 
;UE START WITH 
;3 LIUES 

■Af^D PLIT THEM IN 
iTHE SCORE LINE 
iNEXT WE SET UP 
;THE COLORS WE 
iUm TO USE. 



iWE'D BETTER TEL!. 
■JHE CilMPLrrER WHERE 
OUR DISPLAY LIST 
.IS LOCATED' 
iTELL WHERE THE 
VERTICAL BLANK 
INTERRUPT IS 
MD SET IT! 
HERE'S OUR P.'M 
.GRAPHICS AREA' 
iTURN ai THE 
m DMROL 

.GRAPHICS COf'ITROL' 
; STABLE 'm 



;CLB^R OUT 
iTHE P,'H AREA; 
;MIS3ILES, 
iPLAYER e, 
;PLAYER 1, 
; PLAYER 2, 
;AND PLAYER 3! 



CO 

c 
m 



DEX 

m£ PMICLR 
RETUras RTS 

PLOT ADDRESS MLCULATOR 



jLGOP LWIL DCNE 
;UE'RE DWE! 



MULTIPLY PLOrr BY 49, THEN CALCULATE ADDRESS 
OF THE SCREEN MEHORYTO BE ALTERED. 



^LOTCL 



LDA 

ASL 

STA 

LDA 

STA 

ASL 

ROL 

ASL 

LDA 

STA 

ROL 

LDA 

STA 

ASL 

ROL 

ASL 

ROL 

LDA 

CLC 

ADC 

STA 

LDA 

ADC 

STA 

LDA 

CLC 

ADC 

STA 

LDA 

ADC 

STA 

LDA 

AND 

TAX 

LDA 

LSR 

LSR 

CLC 

ADC 

STA 

LDA 

AOC 

STA 

RTS 



PLOTY 

A 

LO 

#8 

HI 

LO 

HI 

LO 

LO 

LOHLD 

HI 

HE 

HIHLO 

LO 

HI 

LO 

HI 

LO 

LOHLD 

LO 

HI 

HIHLD 

HI 

«DISP4255 

LO 

LO 

i)DISP/25d 

HI 

HI 

PLOTX; 

#3 

PLOTX 

A 

A 

LO 
LO 
HI 

«e 

HI 



;«2 
;»32 



:+«e=*48 



;+DISPLAY START 

;f«SK X pmnmi 



:L0 & HnWJ HOLD 
iTHE ADDRESS' 
■EXIT! 



jaEAR THE DISPLAY MEMORY 



liRDSP 



LOX m jTHIS ROLITINE WILL 

STX PLOTX jCLEAR THE SCREEN RAM. 



LOX m 


; IT GETS THE ADDRESS 


DL00P2 STX PLOTY 


;0F THE BEGIWING OF 


JSR PLOTCL 


;EACH OR. 7 LINE 


LDX PLOTY 


jTHEN ZEROES OUT 


LOA «00 


I EACH OF THE 


LDY )t39 


;48 BYTES (6-39) 


DL00P3 STA (LO),Y 


;!N THE LINE. 


DEY 




BPL DL00P3 




INX 




CPX m6 




mE DLO0P2 




\dm THE COLOR 1 BORDER 


' LDA m 


;THIS ROUTINE 


STA BORNW 


i DRAWS THE 4 LINES 


BORDER LDX B0RNLI1 


;THAT (iAKE UP THE 


LDA BXSTRT,X 


;UHITE GR.7 BORDER 


STA PLOTX 


m THE SCREEN. 


LDA BYSTRT.X 




STA PLOTY ■ 




LDA BXINCX 




STA BOINCK 




LW BYINC.X 




STA BOINCY 




LDA BORCNT.X 




STA BDQ(T ■ 




DRAWLN JSR PLOTCL 




LDA COLORl ,X 




LDY «e 




ORA (LO),Y 




STA <LO),Y 




LDA PLOTX 




CLC 




ADC BOINCX 




STA PLOTX 




LDA PLOTY 




CLC 




ADC BDIMCY 




STA PLOTY 




DEC BDiM 




9JE DIWULN 




DEC BORNIJi 




BPL BORDER 




■THIS SECTION STARTS 


OFF EACH LEVEL 


' LDA #88 


; POSIT I m THE 


STA PX 


•PLAYER 


LDA #84 




STA PY 




LW IBJEl 


; INCREMENT THE 


CLC 


jLEUEL NlffBER 


AOC #1 




STA LWK 




LDA #9 


;2ER0 OLrr 


STA CURLO 


;CURR&TT TALLY 



STA CURHI 
STA HIWK 
LDA #$FF 
STA SLLOC 
JSR O-WDEC 
LDA DECltWL+1 
ORA #*98 
STA SC0LN2+3 
LDA DECIIttL 
ORA #*98 
STA SC0LN2+4 
LDX LEVEL 
LDA TGTLO,X 
STA LfiJK ■ 
LDA TGTHI,X 
STA HIUK 
LDA STARSP.X 
STA STRSPD' 
LDA M 
STA SLLOC 
JSR QWDEC 



iWORK AREA 

:TELL DECIMAL CONVERTER 

:NOT TO PLACE RESULT 

■COMJERT LP.'EL « 

iGET DECIMAL LPJEL I 

:ADD COLOR 

;PUT IN SCORE LINE 

jSAME FOR 2ND 

;LE'JEL # 

;DIGIT 

:6ET THIS LEVEL'S 

jPARWETER'S 



■o 
> 

m 

o 

4^ 



;SHOW TARGET *^OIM 



;aEAR OUT THE TRACKUffi TABLE TffiT 

irbiehbers uhere the player mo^'ed 
Jlrtrk 



CLRTLP 



GETSTK 



LDA «B 




STA SHOOFF 




ta:x 




STA 0IR,X 


;CLEAR DIRECTION 


STA LGTR,X 


m LENGTH Ef^RIES 


od: 




BNE CLRTLP 




STA MWIX 


ICLEAR MOtJEMENT INDEX 


STA DRAWFG 


;(WD DRAU FLAG 


LDA PAUSE 


iGAME PAUSED-' 


BiE GETSTK 


;YES, LOOP mi WAIT. 


LDA #$FD 


iDO 'WRBLE' SOUND 


STA AUDFl 


;LISIN6 SOUND 


LDA #$FE 


iCHWWELS 1-3 


STA AUDF2 




LOA #*FF 




STA AUDF3 




im #$A3 




STA AUDCl 




STA AUDC2 




STA AUDC3 




LDA #0 


;N0 AnRACT MODE' 


STA AHiWCT 




LDA OEADFG 


iDIO STAR HIT US' 


BEQ ALIVE 


■NO' 


LDX LE1./EL 


■IT HIT US- 


LDA KILLFG,X 


;IHCONDITIff#iL KILL' 


m£ JCRSH 


■YES' WE'RE DEAD"' 


LDA PX 


;N0, IF WE'RE W A 


STA PLOTX' 


lUHlTE LINE (COLOR I) 


LDA PY 


iTHEN WE'RE ALl'JE' 


STA PLOTY 




JSR PLOTCL 





o 

p 

o 

o 

Tl 

c 



o 



3 



LOY m 






AND (LO),y 




LDA BITSGN.X 






PW 


;WD SA'JE IT' 


AND (LO),Y 
mP COLOR 1 ,X 






LDA 3TRIG 


ilRIGGER PRESSED-:' 


;0f^ COLOR P 




Bf^E NOTDRt^ 


;N0' 


BEQ ALIUE 


|YES (WHEW! ) 




PLA 


;0K TO DRAU'5 


JCRSH JMP CRASH 


;G0 KILL PLAYER. 




mi JGS 


;N0 ' ' 


ALIVE LDA HOiJTIH 


; PLAYER MQiJING? 




JHP DRAWIN 


;YES, GO DRAlil. 


BEQ GOTSTK 


;YES-GET STICK. 


NOTDW 


PLA 


iNOT DRAWING-ARE U 


■JHP MOv/STR 


;NU, HffJE STAR. 




W COLOR!. ,X 


•,m COLOR 1^ 


JGSTK JMP GETSTk 


; GO SET STICK 




BNE JGS 


;N0, TRY AGAIN 
iARE WE MOi.'ING 


GOTSTK LDA M 


;SET UP THE 




LDA CIW 


STA HffJTlM 


■MOiJEHEffr TIMER 




LDX CKVX 


iOr^TO ANOTHER 


LDA STICK 


;6ET THE STICK 




mP COLORl ,X 


; COLOR r^ 


STA STKHLD 


;^^D mJi IT 




B€ JGS 


;N0' TRY AGAIN, 


TAX 


iTHEN LOOK UP 




LDA CtCX 


;ALL'S WELL... 


LDA XD,X 


;X DIRECTIW 




STA PX 


; UPDATE PX 


CLC 






LDA CKY 


;ANO 


ADC XD,X 






STA PY 


■PY 

;GEf STICK. 


STA XI ■ 


;AND 


jes 


JHP GETSTK 


LDA YD,X 


;Y DIRECTION 








CLC 




■THIS ROUTINE WWDLES 


THE DRAW FLJCTICN. 


ADC YD,X 










STA YI ■ 




DRAUIN 


LDA DRAUFG 


;ALREADY DRAWING-' 


ORA XI 


iWr MO'JEMENT'' 




m£ DRftJOK 


;YES^ 


BEQ JGSTK 


;N0, TRY AGAIN. 




STA nam 


;N0, THIS IS THE 


LDA PX 


jINCRBIENT 




LDA STKHLD 


;FIRST TIME-SET UP 


CLC 


; PLAYER X 




STA DIR 


; INITIAL DRAWING 


ADC XI 


jPosiTiofj mo 




LDA ttl 


j'.WRIABLES. 


STA m 


IHOLD IT.,. 




STA ORAyPG 




CMP 8159 


(OFFSCREEN' 




STA mSDRN 




eCS JGSTK 


;YES' 




LDA PX 




STA PLOTX 


;N0, SWE IT 




STA INIX 




SEC 






STA HINX 




SBC XD,X 






STA WXX 




STA PXUC 






LDA PY 




LDA PY 


lINCREHETfT 




STA INTY 




CLC 


■PLAYER Y 




STA MItfY 




ADC YI 


iPOSITim AND 




STA MAXY 




STA m 


iHOLD IT... 


DRWOK 


LDA CIW 


;DID UE 


fflP 185 


iOFFSCREEN' 




LDX CkVX 


iRW irfTO AfJOTHER 


BCS JGSTK 


;YES' 




iW C0L0R2,X 


; COLOR 2' 


STA PLDTY 


;N0, m>i IT 




B^E NOCRSH 


;N0. WE'RE OK. 
ICRWIAASSSHHH' 


SEC 






JMP CRASH 


SBC YD,X 




NOCRSH 


LDX MOt'IX 


i UPDATE THE 


STA FYliC 






LDA STKHLD 


; TRACKING 


JSR PLOTCL 


iLOCATE NEW PLAYER 




CMP DIR.X 


ITABLES WITH 


LDY m 


jPOSITIW. 




BEQ :3AfiD!R 


;DIRECTI»J 


LDA BITSm,X 






INC mm 


ilNFORhWTlOfJ. 


#10 (LO),Y 






INX' 




STA CK'J " 


|SA^,'E THE 'LOCATE' . 




STA DIR,X 




3TX CI?.'X 






LDA m 




LDA pmt 


; CHECK THE 




STA LGTH,X 




STA PLOTX 


i POSIT I W NEXT 


SAMDIR 


INC LGTH.X 




LDA PfJC 


;T0 THE ONE WE'RE 




LDA 83 




STA PLOTY 


-Mi IN... 




STA BDC+JT 




JSR PLOTCL 






LDA PX 


;N9J PLOT THE 


LDY m 






STA PLOTX 


iLINE WE'RE 


LDA BITSm.X 






LDA PY 


jDRAWING... 





STA PLOTY 


CCLOOP 


JSR PLOTCL 




LDY #8 




LDA (LO),Y 
md BITOFF.X 




ORA C0L0R2,X 




STA (LO),Y 




DEC BDCfJT 




BEQ CKCOLR 




LDY mm 




LDX OIR.Y 




LDA XD,X 




CLC 




ADC PLOTX 




STA PLOTX 




LDA YD,X 
CLC 




ADC PLOTr 




STA PLOTY 




JMP CCLOOP 


CKCOLR 


LDA PLOTX 




STA PX 




I31PMAXX 




BCC TMINX 




STA l*iX'X 




JMP CHKYm 


TMINX 


CMP MINX 




BCS CHKYfff 




STA MINX 


CHK^iW 


LDA PLOTY 




STA PY 




OIPHAXY 




BCC TMINY 




STA MAXY 




JHP EhJWfi 


TMIW 


CMP MINT 




BCS B^Wfl 




STA MINy 


ElOtl 


LDX ci?.;x 




LDA CK'J 




CMP COLORl ,X 




BEQ ENDLIN 




JMP GETSTK 


ENDLIN 


LM 86 




STA Df¥WFG 




JSR SEARCH 




LDA CURLO 




STA LWK 




LDA CURHI 




STA HIWK 




LDA 815 




STA SLLOC 




JSR aWDEC 




LDA 81 




STA RDRCOL 




JSR REDRAW 




LDX LBJEL 




LDA CURLO 



I IN COLOR 



; UPDATE X P03. 

;CHECK MINIMUM 
;^^D MAXIMUM 
IX k Y '-VALUES 
if^^D UPDATE IF 
;NECES3ARY 



|D!D WE DRAW 
SMO 
i COLOR !■' 

;YES' mo OF LINE' 
;N0, GO GET STICK. 
lUEARET^T 
IDRAWING f*IY!i0RE 
iSEARCH AND FILL" 
;GET CURREhJT WLUE 



;P1JT AT 15TH 
;POS. IN SCOLIN 
ICIM'ERT TO DECIMAL 
iN(W REDRAW THE 
; PLAYER'S PATH IN 
iCOLOR ] (WHITE). 
; CHECK TO SEE 
ilF WE'ME HIT 



NB-iUv'L 



SEC 

SBC TGTLO.X 
STA LOUK 
LDA CURHl 
SBC TGTHI.X 
STA HIWK ■ 
BPL NEULML 
JflP CLRTRK 
LDA LPJEL 
Cf-IP #15 
BEQ r-JOLINC 
INC LBiEL 



; INCREASE SCORE HERE 



NO. INC 



SCOLP 



NOCARy 
NX3P0S 



SHSLP 



ASL 
ROL 
LWi 
STA 
JSR 
LDX 
LOY 
LDA 
CLC 
ADC 

m? 

BMI 
SEC 
SBC 
STA 
INC 
JMP 
STA 

im 

DEX 
BPL 
LDX 
LDA 
ORA 
STA 
DEK 
BPL 
LDA 
STA 
STA 
JSR 
LDA 
STA 
LDA 
STA 
LDA 
STA 
JdP 



LiWK 

HIUK 

«$FF 

SLLOC 

ChWDEC 

15 

m 

DECIMAL, Y 
SCORE ,X 
NOCARY 

m 

SCORE, X 
SCORE"! ,X 
NXSPOS 
SCORE, X 



SCOLP 

)f5 

SMRE.X 

tt$18 

SC0LN2+12,X 

SH:5LP 

»1 

FILLW 

SHOOFF 

PHCLR 

ft64 

STRH6T 

»128 

STRHOR 

#6 

FILLCW 

CLRDSP 



;THE TARGET. 



;HIT TARGET"? 
; YES-NEW LEVEL' 
■NO, GO CLEAR TRACK 
;IF LB^EL < !5 
ITHEN 

INCREMENT 
jLPv'EL 



;SC(RE INC = 
jTGT-CUR * 2 
mn PLACE 
;THE RESULT' 
jCW^^ERT TO DECIMAL 
;AND ADD TO SCORE 



TIMRST 
DEAOCC 



•,nm PLACE THE 
;SCORE IN 
jSCORE LINE #2 



;STOP UB! FOR 
;A MOMENT 

i CLEAR P/M AREA 

; INITIALIZE 

;THE 

;STAR 

jPOSITIW 

;UBI ON AI^IN 

:G0 CLEAR DISPLAY' 



CKSTRT 



RELEAS 



STA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
did 
STA 
LDA 
Af€> 
ORA 
STA 
STA 
LDA 
»€ 
DEC 
BPL 
DEC 
LDA 
ORA 
STA 
i>tP 
Bf€ 
LDA 
STA 
LDA 
STA 
LDA 
m\) 

mE 

LDA 
AND 
BED 
LDA 
STA 
LDA 
STA 
.JHP 



AUDC2 

AUDC3 

«1 

NOCCHG 

«15 

DEDBRT 

«5 

TIHER 

OEOBRT 

AUDCi 

RWnIDCW 

t»$lF 

AIJDFl 

RANDOH 

#$F8 

DEDBRT 

QlPFl 

C0LPM3 

TIMER 

DEADCC 

DEDBRT 

TIMRST 

LI'v'ES 

LIUES 

#$98 

SC0LfJ2+19 

mn 

NOTDED 

«6i:HSG&255 

SCOL 

«Gi31S6/256 

SCDL+1 

COt-JSOL 

«1 

CKSTRT 

CWSOL 

«1 

RELEAS 

«SC0LRJi-255 

SCDL 

ttSCOLIN/256 

SCDL+1 

START 



NO PLAYER COLOR 

CHANGE IN 'v'BJ 

SET BRIGmiESS OF 

PLAYER DEATH. 

SET DEATH TIMER 

TO 5 JIFFIES. 

MiM BRIGHTNESS 

TO DEATH SOLKD UOLUME 

GET RANDiDM 

DEATH SOWD 

FREQUENCY 

GET pm^m 

DEATH COLOR 

ADD BRITE 

PUT IN LINE COLOR 

mi) PLAYER COLOR 

TIMER DM YET' 

NO, GO CHANGE COLOR, 

DEC-RBIE^ff BRIGHTNESS 

IF MORE, GO DO IT. 

1 LESS LIFE 

GET # LI'v'ES 

ADO COLOR 

AMD DISPLAY' 

ZERi] LI'JES-;^ 

NO' 

WE'RE CL>1PLETELY 

DEAD, mm 

'G^IE iMR' 
MESSAGE 
lA^IT FOR START 
KEY... 

NOT PRE3SED--L00P. 
KEY PRESSED, NCW 
WAIT FOR RELEASE' 
NOT RELEASED YET' 
PUT SCORE 
LINE BACK 
;IN DISPLAY 
SLIST... 
;(W0 START i3AME' 



JCTRK 



STA PLOTY 




JSR PLOTCL 




LDY m 




LDA BITSl^nX 




AND (LO),Y' 


;IS LOCATim OT^ 


fflP COLORi .X 


; COLOR 1? 


m£ nmiQt 


■,N0, TRY A&^IN. 


JSR PHCLR 


ilT'S OK, CLEAR P,H 


LDA PLOTX 


iSA'vIE 


STA PX 


;THE PLAYER'S 


LDA PLOTY 


iNEW 


STA PY 


; COORD imTES. 


LDA »6 


iREDR« THE 


STA RDRCOL 


i PLAYER'S TRACK 


LDA HASDRN 


■IN COLOR 6 


BEQ JCTRK 




JSR REDRf^ 




LDA INIX 


;THIS PART IS 


STA plots; 


;NEEDED TO PLOT 


LDA INIY 


;A COLOR i BLOCK 


STA PLOTY 


;AT THE START OF 


JSR PLOTCL 


iTHE PLAYER'S TRACK 


LDY m 


lAFTER IT IS ERASED. 


LDA SITOFF,X 


;(NCeODY'S PERFECT') 


AfJD (LOi.Y' 




ORA COLORl ,X 




STA (LO),Y' 




LEW «24' 


;RESTOR£ DRAW LINE 


STA COLPFl 


■COLOR 


LDA m 




STA NOCCHG 




STA HITCLR 




STA DEAOFG 




JMP CLRTRK 


jAf'iD GO START NBJ TR 



> 

o 

m 
o 

03 



■THIS RiUTIfC USES THE TRACKING TABLES, 

:D!R AND LGTH " """' 

; PLAYER DREW. 
iDESIRED. 



TO REDRAW THE LINE THE 
RDRCOL INDICATES TIC CiXOR 



O 

P 

O 
O 

■D 

C 
H 

Z 
O 



THIS SECT I m PLACES PLAYER AT A RfWDOM 
LOCATIW IF THERE ARE MORE LI'JES LER. 



kdmi 



REDXLP 



jTHFS SECTIOfJ rtWDLES PLAYER'S DEATH 



NOTDED 
N&iLOC 



CSH^r 



6RA3H 



LDA m 
STA AUDCI 



;N0 WARBLE SOU^JD 



LDA m 
STA SHOOFF 
LDA RAf^lDW 
md lf$FE 
i3iP «159 
BCS NBJLOC 
STA PLOTX 
LDA Rf*€)OM 
fWD «$7E 
CMP )f85 
BCS CSHY 



•MVl SHOW 
■PLAYER 
;6ET RA^^IDOH X 
;MU3T BE PJBi 
\mD m SCREEN 



;GET Pj^DOM Y 
jMUST BE BJEN 
■Am m SCRE&I 



REDYLP 
TIMES3 



LDA 
STA 
LDA 
STA 
LDA 
STA 
LDX 
LDA 
■STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 



INIX 

REX: 

INIY 

m 

V 

/\ 

X 

DIR,X 

REDIR 

LGTH.X 

L6THY 

«1 

Y 

«3 

TIMES 

RE< 

PLOTX 

RBi' 



CO 

c 
m 



ENDRD 



RDCl 



3ETNRP 



NXTY 



NXTX 



JRXLP 



STA 
JSR 
LDY 
IDA 
Br€ 
LDA 
AND 
STA 

jr^p 

LDA 
STA 
RTS 
LDA 
*J0 
ORA 
STA 
DEC 
BEQ 
LDX 
LOA 
CLC 

m: 

STA 
LOA 
CLC 
ADC 
oTA 
•JHP 
INC 
LOA 

mp 

BEQ 
BCS 
..!HP 
INC 
\M 
CJ-1P 
BEQ 
BCS 
■JtiP 



PLOTY 
PLOTCL 

m 

RDRCOL 

RDCl 

BITOFF.X 

(LO),Y 

(LO),y 

SETNRP 

m 

DRAIJFG 

B!TOFF,X 
(LO),Y 
COLOR! ,X 

au),Y 

TIHES 
NXTY 
REDIR 
REX 

XD,X 

m. 

REY 

YD.X 

REY 

TIHES3 

V 

Y 

L6THT 

JNRD 

NXTX 

REOYLP 



HOUIX 
JRXLP 
ENDRD 
REDXLP 



CKH2 



NOSUB 



SUBEf-1 



SHi:W!T 



SHOLP 



SHB-ID 



LDA 
O^P 
BCS 
DEX 
BPL 
JMP 
LDA 
SEC 
SBC 
STA 
LDA 
SBC 
STA 
INC 

m? 

LDX 
LOY 

m\ 

LDA 
ORA 
STA 
INY 
DEX 
BPL 
RTS 



La* 

LU.'ALS.X 
SUBEN 

CKMAG 
SHiaJIT 

La#, 

LOi,'ALS,X 

Li3UK 

HIWK 

HIiJALS,X 

HiyK 

DECIhttL,X- 

amG ' 

«4 
SLLOC 
SHEND 
DECIMAL, X 

nm 

SC0L1N,Y 



SHOLP 



THIS ROUTUC MffJES THE STAR AROLIJD m 
THE PLAYFIELD. THE STAR IS ROTATED AfJD 
PLOTTED (IN A PLAYER) IN THE UBI, 



;2-8YTE DECIMAL COf-WERTER. Ca-WERTS 
iA 2-BYTE Bir-ttRY NLMBER TO A 5-BYTE 
•DECimL NLIIBER. WILL PLACE THE 
iDECIMAL NIHBER IN SCOLIN IF DESIRED 
;(3LL0C DETERMINES POSITIW). 



WAYCLR 



|>WDEC 
CDLP 



c^w>G 



LDX «4 

LDA «e 

STA DECimCX 

DEa 

BPL CDLP 

LDX tt4 

LDA HIWK 

CWP HIWLS.X 

BEQ cmi 

BCS SUBHi 
6CC NOSUB 



ADC STRDTY.X 




STA PLOTY 




JSR PLOTCL 




LDV m 




LDA BITSW.X 




Af'ID (LO),Y 
BEQ WAYCLR 


\mi COLLlSlOf^' 


iNO, ALL CLEAR' 


LDA #15 


;H1T SOMETHING, 


STA esaiT 


; START Blf1P SOUND f 


m£ NEWDIR 


•GET Hm DIRECTIOf^ 


LDA PLOTX 


;ADJIJ:3T STAR 


CLC 


jCOOROMTES 


ADC *t44 


■BACK TO P/M 


STA STRHOR 


;COORDMTES 


LOA PLOTY 


;FROH PLAYFIELD. 


CLC 




ADC m 




STA STRHGT 




LDA THPDIR 


;SET DlRECTim 


STA STRDIR 




JMP GETSTK 


;AND LOOP 



MWSTR 


LDA :3m IM 


;TIME TO HM-' 


;3PECIFICQUESTIW 




BEO MSTR 


;YES, GO DO IT 


■CARE OF A.N.A.L.0 




JHP ijETSTK 


;NO,GET STICK 






HSTR 


LDA STRSPD 


;SET MffJEHENT TIMER 


kARCH 


LDA #1 




STA :3ffT!H 


;WITH STAR SPEED 




STA FILLON 




LDA STRHGT 


;ADJUST Pm 




LOA #8 




SEC 


{COORDINATES TO 




STA 




SBC #13 


jmTCH PLAYFIELD 




LDA STRHOR 




STA STRLY 


;PLOniNG 




SEC 




LOA STRHOR 


;COOROIf*:iTES, 




SBC #44 




SEC 






STA SX 




SBC #44 






LDA STRHGT 




STA STRLX 






SEC 




LDA RAfJDOM 


;WAfJT TO CHAf-JGE 




SBC #13 




mp #248 


;THE STAR'S DIRECT I »!' 




STA 3Y 




Bcc m\m 


;NG. USE SAME. 
;GET RANDCH 


FINDCL 


LDX D 


NEWDIR 


LDA midm 




LDA SX 




md #7 


;D] RECTI OfJ 




CLC 




JMP DIRCHK 






ADC 3XD,X 


SAMSTD 


LDA STROIR 


;GET OLD DIRECTim. 




STA SX 


DIRCHK 


TAX 


; CHECK TO SEE 




STA PLOTX 




STA TMPDIR 


;IF STAR WILL 




LDA SY 




LDA STRLX 


J BUMP UffO m 




CLC 




CLC 


;PLAYFIELD 




ADC SYD,X 




ADC STRDTX,X 


I OBJECT. 




STA 3Y 




STA PLOTX ■ 






STA PLOTY 




LDA STRLY 






JSR PLOTCL 




CLC 






LDY #6 



jSEARCH FOR FILLABLE AREA 

•THIS SECTIOt^ SEARCHES FOR THE AREA TO 
;BE FILLED. IT IS SO CWPLICATED THAT 
;EXPLA^^ATIW OF ITS FINER DETAILS 
jWOULD BE ALMOST IMPOSSIBLE WITHOUT 
iWRITING ANOTHER DIMPLETE ARTICLE. AT 
■AW RATE, IT WORKS. THOSE WITH ANY 
3PECIFICQUESTI06 SHOULD WRITE fC, 
" ' " G, 





LDA <10).Y 




md BITSW.X 




mP COLORl ,X 




BEQ F1NDC2 




W C0L0R2,X 




Bf^E FINDCL 




LDA #8 




STA TD 




.JMP F01UD2 


F1NDC2 


LDA D 




STA TD 




JSR DECD 


FC2A 


JSR 3RCHLC 




CMP COLORl ,X 




BNE FC2B 




JSR GRABEM 




■JMP FINDC2 


FC2B 


CMP C0L0R2,X 




BNE FC2C 




JSR GRABEM 




JMP OUTLIN 


FC2C 


JSR INCD 




■JMP FC2A 


F0UND2 


LDA #6 




STA TRIES 




JSR DECD 


F^e2A 


JSR 3RCHLC 




CMP C0L0R2,X 




a^E FND2B 




JSR GRABEM 




JMP fQ\MD2 


FND2B 


LDA TRIES 




CLC 




ADC #1 




STA TRIES 




CMP #3 




BEQ FINDC! 




JSR INCD 




JMP FND2A 


FINDCl 


LDA D 




STA TD 




JSR DECD 


FCIA 


JSR SRCHLC 




CNP COLORl ,X 




BNE FCIB 




JSR GRABEM 




.JMP FINDC2 


FCIB 


JSR INCD 




.JMP FCIA 


OLtTLIN 


JSR PLSXSY 




LDA #0 




STA TRIES 


OUTLA 


JSR SRCHLC 




mP COLORl ,X 




BNE OUTLB 




JSR GRABEM 




■JMP OUTLIN 


OUTLB 


LDA TRIES 



OUTLD 
0UTLD2 



OUTLE 
SRCHLC 



Lo:T;cr 



NOREAD 
GRABEH 



INCD 



DECD 



CLC 
ADC tfl 
3TA TRIES 
CflP «4 
BEQ OITTLD 
JSR INCD 
JHP OUTLA 
JSR LOCTX-if 
W C0L0R2,X 
Bf^lE OIJTLE 
JSR FILL 
LDA #e 
STA FILL»< 
RTS 

JSR INCD 
JSR SRCHLC 
.JMP OiJTLD2 
LOX TD 
LDA S>! 
CLC 

ADC SXD,X 
STA TX 
STA PLOTX 
LDA SY 
CLC 

ADC SYD,X 
STA T( 
STA PLOTY 
LM PLOTX 
a-1P »159 
BCS NOREAD 
LDA PLOTY 
|>1P #85 
BCS NOREAD 
JSR PLOTCL 
LDY m 
LDA (LO),Y 
m BITS»^,X 
RTS 
LDA #8 
LOX m 
RTS 

LDA TD 
STA D 
LDA TX 
STA SX 
m TY 
STA SY 
RTS 
LDA TD 
CLC 
ADC «! 
fWD «3 
STA TD 
RTS 

im TD 
SEC 
SBC «1 



STA 
RTS 
PLSXSY LDA 
STA 
CHP 

ecu 

STA 
.JMP 

TM1M;(2 Ct-IP 
BCS 
STA 

CKYMi2 LDA 
STA 

mp 

BCC 
STA 
JHP 
iliP 
BCS 
STA 
ENDMM2 JSR 
LDY 
LM 

md 

ORA 
STA 
RTS 



TM!NY2 



#3 

TD 

SX 

PLOTX 
WXX 
TMINX2 

mxx 

CKYffl2 
HINX 
CfCYMH2 
MM 

PLOTY 

ma;<y 

TM]hfY2 

m;<Y 

O^0HM2 

HINY 

ENDW2 

HINY 

PLOTCL 

m 

BITOFF,X 
(LO>.Y 
C0L0R2,X 
(LO),y 



CLRC2T 
LOCLPl 

L0i:LP2 



FILLIT 



FILL ROUTINE 

AS WITH THE -SEARCH' SUBROUTINE. THE 
FILL SUBROUTINE IS FAR TOO CWPLEX TO 
EXPLAIN HERE. THIS FILL IS B-JTIRELY 
DIFFERENT FROM THE SYSTB-I'S FILL 
ROUTINE, AS IT WILL FILL ANY SWPE 
imi IS OUTLINED IN COLOR 2. 



FILL 



Lw m 


•,V.}m OFF 


STA AUDC2 


;SOWD CHANflELS 


STA AU0C3 


;2 Af© 3. 


LW MAXY 


UNITIALIZE 


SEC 


iTHE FILL 


SBC MINT 


; SOUND 


STA FILFRQ 


■FREQUENCY. 


LDA MINX 
SEC 
SBC SI 






STA MINX 




STA FX 




LW> MINY 




STA FY 




SEC 




SBC SI 




STA MINY 




LDA mxx 




CLC 




ADC SI 





FOLLOW 



L0CLP3 



L0CLP4 



LOCATE 



STA MAXX 
LDA mXY 
CLC 
ADC SI 
STA MA;<Y 
LDA m 
STA SCTALY 
LDA U 
STA C2TALY 
JSR LOCATE 
!>1P S2 
M LOCLP! 
INC C2TALY 
JSR LOCATE 
tW S2 
BEQ L0CLP2 
Af-ID Si 
»€ CLRC2T 
im C2TALY 
fflP SI 
BEQ FILLIT 
JSR LOCPR'v' 
BEQ CLRC2T 
LDA FX 
STA PLOTX 
LDA FY 
STA PLOTY 
JSR PLOTCL 
SO 

ao).Y 

COLORS, X 



LDY 
LDA 
ORA 

STA (LO),Y 
INC SCTALY 
JSR LOCATE 
m- #0 
BEQ FILLIT 
At-JD SI 
BNE CLRC2T 
LDA SI 
STA C2TALY 
JSR LOi:i^TE 
CMP S8 
BEQ L0CLP3 
AT-ID SI 
m£ CLRC2T 
INC C2TALY 
.JHP FOLLW 
LDA C2TALY 
(W SI 
BNE L0CLP4 
.JMP CLRC2T 
JSR LOCPR'v' 
mp BITSW,X 
BEQ FILLIT" 
JMP CLRC2T 
LDA FX 
CLC 
ADC SI 



NOFFDC 



FILEND 



rOFX 



N0TC2 



NOTCJ 



STA 
CMP 

mE 

LDA 
CLC 
ADC 
STA 
LDA 
ADC 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
BEQ 
DEC 
LDA 
CLC 
flDC 
STA 
i3iP 
BEQ 
LDA 
CMP 
BNE 
PLA 
PLA 
JMP 
PLA 
PLA 
RTS 
LDA 
STA 
LM 
STA 
JSR 
LDY 
LDA 
(WD 
Off 
BNE 
LDA 
ORA 
STA 
INC 
LDA 
RTS 
W 

m£ 

LDA 
RTS 

mp 



FX 

MAXa 
STOFX 
CURLO 

SCTALY 

CURLO 

CURHI 

m 

CURHI 

S8 

SCTALY 

MM 

FX 

SO 

C2TALY 

S$86 

AUDCl 

FILFRQ 

AUDFl 

NOFFDC 

FILFRQ 

FY 

SI 

FY 

max:y 

FILEND 
FX 

MINX 
STOFX 



CLRC2T 



FX 

PLOTX 

FY 

PLOTY 

PLOTCL 

SO 

BITSCN.X 

(LO),Y 

C0L0R2,X 

N0TC2 ■ 

BITSW.X 

(LO),Y' 

<LO),Y 

SCTALY 

S2 



COLORl ,X 

NOTCl 

SI 

SB 



C3 
LOCPRU 



NOLOCP 



m£ 

RTS 
LDA 
RTS 
LDA 
STA 
LDA 
SEC 
SBC 
CMP 
BEQ 
STA 
JSR 
LDY 
LDA 
WD 
RTS 
LDA 
LDX 
RTS 



C3 

S3 

FX 

PLOT.K 

FY 

SI 

MINY 
NOLOCP 
PLOTY 
PLOTCL 

se 

BITS»J,X 
(LO),Y 



;'v'BI ROUTINE 



IMTRPT 



NOPRES 
NOPAUS 



NOBS 

NODEC 

NOFILL 

NffllTP 
NOHITL 



LDA KEY 
CflP #$21 
mE NOPRES 
LDA SfFF 
STA KEY 
LDA PAUSE 
EOR S$FF 
STA PAUSE 
LDA PAUSE 
BEQ NOPAUS 
.JHP xm&j 
LDA BSCrfT 
Kil NOBS 
ORA S$A8 
STA AUDC4 
LM #$88 
STA AUDF4 
DEC BSCf{T 
LDA TIMER 
BEQ NODEC 
DEC TIMER 
LM FILLW 
BEQ NOFILL 

JMP xmw 

LDA SO 
STA DEADFG 
LDA P8PL 
md S$88 
BEQ NOHITP 
INC DEADFG 
LDA P8PF 

md mi 

BEQ WHITL 
INC DEADFG 
STA HITCLR 



> 

o 

m 
o 

00 



IS SPACE B^R 
PRESSED' 

NO, CHECK FOR PAUSE. 
CLEAR OUT 
KEY CODE, 
COMPLEMENT 
THE PAUSE 
FLAG. 

ARE WE PAUSED"' 
NO' 

PAUSED, Ni] UBI' 
MORE BUMP SOU^Dv 
NO, PROCESS TIMER, 
MIX yOLlUE UITH 
PURE TW, 
SET UP BUMP 
SOltJD FREQUENCY 
f^^D DECREMBfT COUNT, 
TI^€R DiSJN TO ZERO^ 
YES, DW-'T DECRBiENT, 
DECRBiE^JT TIMER. 
ARE UE FILLING' 
NO, 00 REST OFUBI. 
YES, EXIT 'JBl 
CLEAR OUT 
DEAD FLAG 
HAS PLAYER 8 
HIT PWYER 3' 
NO' 

YES"' 

HAS PLAYER 8 
HIT COLOR 2' 
NO! 

.YES!!' 
;CLEAR COLLISIOfJ. 



O 

P 

O 
O 

T) 

c 



o 



en 

c 
m 



LDA 
BEQ 
DEC 

NCHDEC LDA 
BEQ 
DEC 

WTDEC LDA 
BEQ 
DEC 
JMP 

STAROT LDA 
STA 
LDA 
CLC 
ADC 

m? 

BfJE 
LDA 
STOSTP STA 
UBREST LDY 
LDX 
LDA 
STA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 



LDA 
CLC 
ADC 
STA 
LM 
CLC 
ADC 
TAX 
LDA 
STA 
STA 
STA 
STA 
LDA 



HIWTIH 
f#(DEC 
MOivTlM 

mm 

MfTDEC 

:SHTIH 

STARCT 

STAROT 

STARCT 

UBREST 

ttl 

STARCT 

STRPOS 

»1 
«7 
STOSTP 

m 

STRPOS 

STRPOS 

STRHGT 

19 

PLB-1,X 

PL8+8,X 

STARBl ,Y 

PL8,X 

STARB2,r 

PL8+1,X 

STARBS,Y 

PL8+2,X 

STARB4,Y 

PLi3+3,X 

STARB5,Y 

PL8+4,X 

STARBi,Y 

PL8+5,X 

STARB7,Y 

PL8+6,X 

STARB8,Y 

PL9+7,X 

STRHOR 

HPOSPe 

SHOOFF 

EtWBI 

PX 



tt47 

HP0SP3 

PY 

#$18 

m 

PL3-3,X 
PL3-2,X 
PL3+2,X 
PL3+3,X 
#$48 



iMffJEMBiT TIMER ZERO' 
;YES, DON'T DECREMEhlT. 
;DECREHB-n TIMER. 
J STAR MOi.'E TIMER imV 
;YES, DOrrT DECREMENT. 
; DECREMENT TIMER. 
;STAR ROT. TIMER ZERO? 
;YES, ROTATE STAR! 
iDECREMENT TIMER 
;AND SKIP ROTATHifrl. 
;SET ROT, TIMER 
:T0 1 

jINCRB-eJT 
iSTAR ROTATIiDN 
iCOUfffER, 
■ALLOW iHLY 8-6. 
•ROT. COlf^T OK 
;ZERi] ROT. COUf^ER. 
SSA-JE ROT. POS. 
:THIS SECTION 
i DRAWS THE STAR 
;IN PLAYER 9 
;MEHORY USING 
;THE TABLES 
;■' STARBl' THRU 
rSTARBb". 



SET STAR'S 
H0RI2. POS. 
OK TO SHOJ PLAYERS' 
NO, E<1T UBI 
SET PLAYER'S 
HORIZiMAL 
•POSITION 

;DRAU PLAYER 
:1N PLAYER 3 
;MEMORY 



■DATA 
lliLIST 



STA PL3-1,X 
STA PL3+!,X 
LDA tttAB ■ 
STA PL3,X 
LDA NOCCHG 
mi. e-PJBI 
INC C0LPM3 
JNP XITVB*.' 



{STAR PLAYER-MISSILE IMAGES 



COLOR CHAf-IGE OK-' 
NO, E<!T UBI 
YES, CYCLE THE COLOR, 
DIM WITH MBl! 



SCDL 

SCOLIN 
SC0LN2 
GmSG 

■LB./EL 

Igtlo 

TGTHI 

STARSF 

KILLF6 



DB $78 ,$70, $78 

DB $4D,DlSre255,DlSP/254 

DB $D,$0,$D,$D,$D,$D,$D,$D,$D,$D 

DB $D ,$D ,$D ,$D ,$D ,$0 ,$D ,$D ,$D ,$D 

DG $0,$0,$0,$D,$D,$D,$D,$0,$D,$0 

DB $D ,3D ,$D ,$D ,$D ,ID ,$D ,$D ,$D ,$D 

DB $D,$D,$D,$D,$D,$D,$D,$D,$0,$D 

DO ID ,$D ,$D ,$D ,$D ,$D ,$D ,$D ,$D ,$D 

DB $0,$0,$D,$D,$D,$D,$D,$D,$D,$D 

DB $D ,$D ,$D ,$D ,$D ,$D .$D ,$D ,$D ,$D 

DB $D,$D,$D,$D,$D,$20,$46 

W SCOLIN 

DB $4.4 

m SC0LN2 

DB $41,0LISTf(255,DLIST/256 



CT.CG,CT,CC0L,8,9,B,6,8,e 
0,iX,l:U,UR,CCOL,8,8,8,8,9 

cL,c«,ccoL,e,e,e,cs,cc,co 

CR,CE,CCOL,8,8,e,8,8,0,8,8 

e,8,8,e,8,CG,CA,CH,CE,6 

0,CiJ,CV,CE,CR,8,8,8,8,8 

TABLES 



OB 
DB 
DB 
DB 
DB 



OB 64, l.i, 224, 48, 246, 212, 16,4 

DB 248,224,212,224,68,168,112,212 

DB 31, §■?, 46, 35,42, 43, 3?, 41 ,42' 

DB 46,48,46,47,47,48,40' 

DB 4,4,4,3,3,3,2,2,2,2,2,1,1 

DB I,!,! 

DB 0,8,1,8,1,1,8,1,1,1,1,8,8 

DB 1,1,1 



ZEROl 


DB 


8 


SCORE 


DB 


e 


SLLOC 


OB 


8 


CURLO 


DB 


e 


CIJRHI 


DB 


8 


LEVEL 


DB 


e 


PftiJSE 


DB 


e 


HASDRN 


DB 


8 


LQUK 


DB 


9 


HI UK 


DB 


e 


SCTALY 


DB 


8 


LIMES 


DB 


e 



! " ) " ! ■■■ ) " I ' 



CTARBl 
STARB2 
STARB3 
STARB4 
STARB5 
STARPi 
STARB7 
STARB3 

STARCT 

STRPOS 

STRHGT 

STRHOR 

STRLX 

STRLY 

TfFOIR 

STRDIR 

STRDTX 

STRDTY 

STRSPD 

COLOR 1 

C(I0R2 

C0LOR3 

BITSON 

BITOFF 

BX3TRT 

BYSTRT 

BXINC 

BYINC 

BORCNT 

imm 

BDINCX 

BDINCY 

BKNT 

PXWC 

PWC 

SHOOFF 

CtC< 

CKY 

INIX 

INIY 

MINX 

MINY 

MAXX 

MAX'r 

RE< 

REY 

X 

Y 

3X 

SY 

T>{ 

TY 

FX 

FY 

TO 

D 



DB $31,$48,$20,$18,$03,$04,$e2 

DB $42,$43,$28,$]8,$e8,$84,$C2 

DB $24,$24,$13,$18,$83,$C3,$24 

DB $18,$18,$1C,$1F,$F8,$38,$18 

DB $1'3,$18,$38,$F8,$IF,$IC,$18 

JO $24,$24,$C8,$88,$1B,$13,$24 

DB $42,$C2,$84,$88,$18,$2e,$43 

DB $8I,i82,$84,$88,$18,$2e,$48 

DB 8 

DB 8 

DB 8 

DB e 

DB 8 

DB 8 

DB 8 



OB 1,1,8,255,255,255,8,1 

DB 8,1,1,8,1,255,255,255 

DB 4 

DB $48,$18,$84,$B1 

DB $38 ,$28 ,$88, $02 

DB $C8,$3e,$8C,$03 

DB $C8,$38,$8C,$83 

DB $3F,$CF,$F3,$FC 



DB 8,158,1^8,0 
^ 8. 8, 84.84' 
1,0,255,8 
8,1,8.255 
159,85,159,35 



DB 
DB 
DB 
06 
DB 
DB 
DB 







DB 8 

DB 8 

DB 9 

DB 8 

OB 9 

DB 9 

DB 

DO 8 

DB 8 

DB e 

OB 

DB 8 

DB 9 

DB 8 

OB 

DB 9 

DB 8 

DB 8 

DB 

DB 8 

DB 8 

DB 8 



BSi>rr 

FILFRQ 

TRIES 

FILLQN 

C2TALr 

NOCCHG 

OEDBRT 

STKHLD 

RWCOL 

REDIR 

LGTHY 

TIMES 

CKVX 
DRAUFG 
MOVIX 
XD 



YD 



SXD 

SYD 

DECItiAL 

ZER02 

HimS 

LO-JALS 

DIP 

LGTH 



DB 8 

DB 8 

06 9 

DB 6 

DB 8 

DB 8 

DB 9 

DB 8 



DB 
06 
DB 
DB 
DB 
DB 
DB 



DB 

oe 

DB 
08 
DB 
DB 
DB 
06 
DB 
08 
DB 
OB 
DB 
03 
DS 



8 
8 

8,9,0,8 

8,8,8,1 

8,0,8,255 

9,8,8,8 

8,0,0,9 

8 ,8 ,8,8 

0,9,8,9 

8,1,255,8 

Oil 1 H 1 i-Dj 

255,8,1,8 

8,0,9,8,9 



8,0.8,3,39 

1,19,188,232,16 

256 

256 



PAGE 110 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



WlOlRlD IS Q|U|A|R[E 



16K cassette or disk 



by Sol Guber 



The computer can be used as a very good teaching 
tool. The uses for teaching of mathematics are end- 
less, from simple addition to calculus. Concepts are 
easily represented through the arithmetic algorithms 
that are common to computer-assisted instruction 
(CAT). The teaching of other subjects like geography 
and history can lend themselves to CAI, either 
through quizzes or games with the computer either 
scoring or asking a series of predetermined questions 
and monitoring the answers. The use of CAI in 
teaching English and spelling is weak since these sub- 
jects lend themselves to repetitive drilling of the con- 
cepts. The following is a game that can be used to 
teach spelling. 

The game is called MAGIC SQUARE, and the 
concept comes from a book called Puzzelment by 
Kohl. The computer makes a square of letters in a 
random order. The player moves a joystick over the 
square and forms the letters into words. The letters 
have to be one of the letters around the previous 
letter. There is a two-minute time limit, and the only 
skills needed are in moving the joystick; no typing is 
needed. There are two levels of difficulty, a six-by- 
six square containing 11 extra vowels and the stan- 
dard five-by-five square containing all the letters 
except Q,. The game is non-scoring, in that there is no 
internal scoring of the game for the number of words 
or the number of letters used, so that any rules can be 
made up. The computer also does not check to see if 
the letters make up a real word. 

The following is a quick description of the game. 
A question is asked if extra vowels are wanted. If a 
"Y" is pressed, then a six-by-six square is formed. 
The square is made up in the left corner of the screen. 
Every time the joystick is moved, it highlights a 
letter. If the trigger is pressed, the letter is put on the 
screen below the square. When the word is com- 
pleted, then the Start button is pushed. When the 
trigger is pressed for the next letter, another part of 
the screen shows the next word. The system is set up 
for a maximum of eight letters in a word. In the 
upper right corner is a real-time clock that is set for 
two minutes of time. After the two minutes are up, 
hitting another key will start the system with a new 
word square and another two minutes. 

The following is a line by line description of the 
program. Line 10 dimensions the various variables 
that will be needed. Line 15 puts the subroutine lines 
into variables. Line 20 determines if extra vowels are 
desired. Line 30 determines if FLG is set to 1 or 0. In 



Line 20, a logical IF is performed, and the question 
X$(1,1)="Y" (1) or does not equal "Y" (0) is 
answered. This answer is placed into the variable 
FLG. Line 40 puts the alphabet into A$ and the extra 
vowels into B$ and determines the values for the size 
of the square. Line 50 determines if FLG has been set 
and extra vowels are wanted. 

The Line 55 goes into Graphics 2 without a text 
window and changes the color registers from the 
default to other colors. Line 60 starts a FOR-NEXT 
loop that puts the square on the screen. Lines 70-80 
determine the position of the next letter. Line 90 
determines a random number between 1 and the 
number of letters still needed. Line 100 puts the 
letter on the screen in the proper position. Lines 105 
and 110 shorten the variable A$ so that fewer letters 
are needed for the next choice. By decreasing both 
the size of the variable I and moving the unused 
letters internal to the variable A$, there is no need to 
check if the letters have been used yet. This also in- 
creases the randomization of the square. 

Line 125 goes to a subroutine that puts the 
possible values of the joystick into a look-up table 
for quicker translation from numbers to direction. 
This eliminates many IF tests. Line 130 puts into 
the two low bits of the real time internal clock in the 
ATARI. Locations 18, 19, 20 are the real time clock. 
The value of 20 is changed every 1/60 of a second. 
When the value reaches 255 in location 20, then the 
next number is and location 19 is updated by one. 
When location 19 is 255, the next update is to and 
location 18 is updated by one. Thus, location 20 is 
accurate to 1/60 of a second, location 19 is accurate 
to about 4 seconds, and location 18 is accurate to 
about 17 seconds. Every 77 hours, the clock starts 
itself again. Line 140 starts printing the clock on the 
screen. 

Lines 150 and 160 initialize several variables. Line 
170 determines the address of the screen memory. 
Line 175 determines the address in ROM of the posi- 
tion of the joystick, and lines 178 and 190 change the 
color of that letter. Line 210 determines if the trigger 
has been pressed, and if it has, then it goes to sub- 
routine line. Lines 212 and 214 determine if the 
START button has been pressed and if it is the first 
or the second time in the line. Line 218 is a delay to 
make the joystick less responsive to movement. Line 
220 determines the position of the joystick. If it is 
15, it is in the neutral position, then GOSUB clock 
and go check the trigger again. If it is not in neutral, 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 111 



then change the color of the letter in hne 228, add the 
appropriate value of the X and Y direction in line 
230. Check the movement to see if it is not off the 
square in lines 240 and 250. If it is, then do not make 
the movement. Go change the clock in line 300 and 
then go to change the color of the letter and check the 
trigger again. 

Lines 1000-1090 are the standard subroutine to 
make a look-up table for the joystick. The various 
numbers returned by the joystick controller are 
translated into an X and Y direction which corres- 
ponds to the way the joystick is oriented. This 
greatly speeds up the use of the joystick. 

Lines 2000-2060 are subroutine clock. Line 2000 
determines how many 1/60's of a second have 
elapsed since the clock was turned on. Line 2010 
determines the minutes, and lines 2020-2030 deter- 
mine the seconds. Lines 2045 and 2050 print the 
minutes and seconds that have elapsed. If the num- 
ber of seconds is less than ten, then a blank is printed 
after the colon mark. Line 2055 determines if 2 
minutes have elapsed, and if they have, then the pro- 
gram goes to line 4000 where it is stopped. 

Lines 3000-3070 are subroutine LINE. Line 3000 
determines the letter under the joystick. Line 3005 
determines if the position is the same as the last time 
the trigger has been pressed. If it is, then the program 
is returned. The program is fast and it is hard to press 
the trigger for a short enough interval to signal the 
system and not long enough to signal the system 
twice. As a compromise, no letter is allowed to be 
used as a double letter, and, to have a letter be 
printed on the screen, it must not be the same as the 
last letter. In other words, the position of the joy- 
stick must have been changed. Line 3007 updates the 
position. Line 3010 determines the color of the 
letter. Line 3020 determines the spot to put the letter 
and lines 3030-3040 put the letter on the screen and 
updates the position. Lines 3050-3060 make a ran- 
dom sound, and the subroutine returns to the 
program. 

Lines 4000-4040 put a message in the right hand 
corner that the game is over. Lines 4042 make a 
sound to signify the same thing if the person was not 
paying attention. Line 4050 determines if a key has 
been pressed to start the next game. If it has, then the 
system goes to line 20, and a new game is started. D 



16 DIM fl5C36J ,BSfll> ,KSC3J,X5TEPtl5J,Y 

5TEPtl5) 

15 CL0CK=2800:LIME=3e80 

2B ? "DO VOU MflNT EKTRfl U0MEL5":mPUT 

HS 

25 FLG=e 

38 IF XSfl,lJ="'Y" THEM FLG=1 

40 0S=:"ftBCDEFGHIJKLMN0PR5TUyMKVZ" : BS=" 

ftftfftEEEIII00":SSQ=5: 50=25 

50 IF FLG=1 THEN flS CLEN fflSJ +1J =BS : 550= 

6:50=36 

55 GRflPHIC5 17:5ETC0L0R 0,4,18 

58 5ETC0L0R 1, 9, 6 : 5ETC0L0R 2,15,18 

68 FOR 1=50 TO 1 5TEP -1 



78 R=IMTCCI-1J/55QJ 

88 P05ITI0H R+2,-R«550+I 

98 5=lHTCRNDt83»I)+l 

188 PRINT «6;ASC5,5J 

185 IF 5=1 THEN 128 

118 A$C5,5J=aSCI,IJ 

128 KEKT I 

125 G05UB 1888 

138 POKE 2B,8:P0KE 19,8 

148 G05UB CLOCK 

150 R=8;T=1 

168 K=2;V=1 

170 5C=PEEKf883+256»PEEKt89J 

175 L0C=5C+28«V+K 

178 Z=PEEK(L0C) 

198 POKE L0C,Z+64 

218 IF 5TRIG(85<>1 THEN G05UB LINE 

212 IF PEEKC53279)<>7 AND T>10 THEN R= 

R+l:T=i:vi=8:Hl=8 

214 IF PEEKt53279)<>7 AND TOl THEN T= 

9:K1=8:Y1=8 

218 FOR J=l TO 25; NEXT J 

228 5=5TICKC6) 

225 IF 5=15 THEN G05UB CLOCK: GOTO 218 

228 Z=PEEKtL0C5 :IF Z>64 THEN P8KE LOC, 

Z-64 

238 K=H+J<5TEPC53 :¥=V + Y5TEPt5J 

240 IF K>550+1 OR H<2 THEN K=K-K5TEPC5 

) 

268 IF Y<1 OR V>550 THEN V=Y-Y5TEP(5J 

380 G05UB CLOCK 

338 GOTO 175 

1088 K5TEP(55=l:Y5TEPt5J=l 

1810 X5TEP(6>=l:V5TEPt6)=-l 

1828 H5TEPt73=l:Y5TEP(7J=8 

1830 XSTEPt9J=-l:Y5TEP(9J=l 

1040 XSTEPC18J=-l;Y5TEPtiej=-l 

1850 H5TEPfllJ=-l:Y5TEPCllJ=8 

1860 H5TEPC13}=0:Y5TEPtl3)=l 

1870 K5TEP(14)=e;Y5TEPa4)=-l 

1880 H5TEPC15J=0;Y5TEPfl5)=8 

1898 RETURN 

2808 Z=256«PEEKtl93+PEEK(28J 

2818 MIN=INTCZ/3600J 

2828 5EC=Z-MIN»3600 

2838 5EC=(INTC5EC/68)»ie)/18 

2040 POSITION 12,0 

2845 IF 5EC<18 THEN ? tt6;MIN;": '■;5EC: 

GOTO 2055 

2858 ? tt6;MIN;":";5EC 

2855 IF MIN=2 THEN GOTO 4088 

2868 RETURN 

3888 Z=PEEKCLOCJ 

3885 IF X1=X AND Y1=Y THEN RETURN 

3087 K1=X:V1=Y 

3818 IF Z>64 THEN Z=Z-64 

3828 SPOT=5C+R»20+T 

3838 POKE 5P0T,Z+128 

3848 T=T+1 

3858 SOUND 8, X«Y«8»RND <ej , 10, 18 

3060 FOR J=l TO 15:NEKT J:50UND 0,8,8, 



3878 RETURN 

4880 POSITION 12,2:? tt6;"TIME" 

4818 POSITION 12,3:? «6;"I5 UP" 

4020 POSITION 10,4:? tt6;"PRES5 ANY" 

4830 POSITION 10,5;? tt6;"KEY TO" 

4040 POSITION 10,6:? tt6; "START" 

4042 FOR J=l TO 255:S0UMD 0,J,10,18:FO 

R K=l TO 3:NEXT K:NEXT J:SOUND 8,8,0,8 

4850 IF PEEKC764J=255 THEN GOTO 4058 

4060 POKE 764, 255: GOTO 20 



(see DrCHECK 2, p. 26) 

18 DATA 612,955,774,151,644,562,701,14 

8,710,255,809,401,623,529,599,8473 

110 DATA 487,734,798,816,230,470,484,7 

21,216,286,365,825,3,328,144,6827 

228 DATA 936,46,558,83,461,94,222,722, 

329,526,336,516,793,604,702,6928 

1878 DATA 536,718,788,453,558,656,589, 

485,575,591,685,787,413,560,933,9151 

3810 DATA 83,784,649,554,912,954,798,8 

23,29,357,862,123,614,375,246,8155 



,^i)^al 



Make Royal Your 




&o/lwcii^J^ 



ATARI® Sourcel 



Over 1000 
itemsfor 

ATARI Atari! 



BAJA BUGGY 





Reg. $32.95 

by 
GAMESTAR 

Now Only 
$29.60 



If you're looking for a fast action driving 
game tfien we recommend this one. Good 
graphics and sound. 



FROGGER 



by ON-LINE 




This is the 

genuine FROGGER 

game that you see^ 

in the arcades. Made by the^'^same people 

that made Jawbreaker (One of the top ten 

sellers.) ^ ., _ , 

Reg $34 95 NOW Only 

32KDisk 16K Tape $31.40 



DISK or Tape 




ONLY 

Reg. $39. 95 $35.10 

Non-stop, 3-D Scrolling 
Action For Your Atari... 



.^oi/al Oo/livciieX 






48 Hour 
Shipping 
Available 



2160W. 11th Avenue 

Eugene, Oregon 97402 

For Credit Card Orders Call open 

1 •800-452-801 3 sam - 6pm , MonSal, 



HARDWARE 



Call 
Call 
Call 



Call 



400 Computer 16K(Used) 
400 Computer 16K (New) 
400 Computer 32K (New) 
400 Computer 32K (New) 

wltti Full-Stroke Keyboard 
400 Computer 48K (new) 

with Full-Stroke Keyboard Call 

800 Computer 48K(Used) Call 

800 Computer 48K (New) Call 
1200 Computer 64K(NEW! call For Prices) 

810 Disk Drive Call 

850 Interface Call 

410 Recorder Call 

Atari 16K RAM Call 

Intec 32K RAM 89.00 

Intec 48K RAM (For 400) 1 39.00 

Full-Stroke Keyboard(For 400) 109.00 

Percom Disk Drive((DD/SS) 599.00 

WICO Joystick 26.90 

WICOTrac-Ball 63.00 

Blank Diskettes (10/box) 28.00 

Mark II Modem 99.00 

Alien Group Voice Synthesizer 1 39.00 

Epson MX-80FT -I- Printer 588.00 

Amdek Color 1 Monitor 387.00 

12' Joystick Extension Cord 9.95 
Computer Paper(1 000, 8'/2"x11') 16.95 

Trade in your 400 or 800 on a 
new 800 or 1200... CALL! 

SOFTWARE 

De Re Atari (Book) 
This manual is The Favorite 
among serious programmers. 
Learn the secrets of your Atari! 
Reg $19 95 NOW ONLY $17.90 
GALAXIAN Now you can play 
the arcade game at home! 
16K Cartridge, Joysticks. 
Reg $44 95 NOW ONLY $39.50 

GORF Just lil<e the arcade game. 
16K Cart. Reg $44 95 ONLY $39.90 
24K Disk. Reg $39 95 ONLY $35.10 

EASTERN FRONT The MOST 
POPUU\R APX game ever, and 
one of the best war games ! 
16K Tape 32K Disl< 
Reg $29 95 NOW ONLY $27.90 



16K 
Tape/Disk 

NOW ONLY 
$29.95 




The city is about to be destroyed and 
ONLY you can save its people from 
destruction. FAST, arcade type action 
game. 




DEFENDER 



o<t^- 



• 16K Cartridge 



^^ • Super Excitement 

Reg $44 95 NOW ONLY $39.50 



New! 

• 10 Different Screens 

• 16K Cartridge 

• Spectacular Sound 
& Graphics 

Reg $49.95 

OUR PRICE 
ONLY $44.90 





DUST COVERS 



> 400/800 Computer 

> 410 Recorder 
* 810 Disk Drive 

Only $8.95e 



We deal Exclusively in Atari 
Compatible Products. Because of 
this, We Know What Works Best! 
Call us for the 
latest info (503)683-5361 



ISSUE 10 



A.N.A.L.O.G. COMPUTING 



PAGE 113 



BEGINNER'S PILOT 



by Thomas M. Krischan 



Recently I attended a convention which 
introduced computers to the novice user. The most 
popular demonstration there was a simple graphics 
program written in ATARI Pilot. The program 
would ask the user to type in the answer to four 
questions about a pattern to be drawn. The 
computer would then sketch the pattern on the 
screen, play a little tune and repeat the questions for 
the next user. At times fifteen to twenty people 
would gather around the machine to try their hand at 
this computerized spirograph. The number of 
viewers grew even larger when I began to explain how 
the Pilot language worked. The language consists of 
only a handful of commands and special characters. 
Figure 1 lists the most fundamental of these. 



Fig 


ure 1. Some Pilot commands. 


T: 


TYPE 


A: 


ACCEPT 


M: 


MATCH 


JM: JUMP ON MATCH | 


U: 


USE 


J: 


JUMP 


E: 


END 


OR: GRAPHICS 


SO 


: SOUND 


PA: 


PAUSE 


* 


LABEL 


# 


NUMERIC VARIABLE 



The commands of ATARI Pilot consist of one to 
two key letters followed by a full colon or a special 
character (eg. #). Each command is directly followed 
by a subcommand. The subcommand may be an 
instruction, label, numeric variable, character string 
or some other statement depending upon the nature 
of the original command. We will describe the 
nature of each of the commands that are listed in 
Figure 1. 

The TYPE command (T: ) is roughly equivalent to 
the PRINT command of ATARI BASIC. The 
character string that you wish to display on the 
screen is typed after the command. However, the 
character string does not need to be enclosed by 
quotation marks. If quotation marks are included 
they will also be displayed on the screen. The 
ACCEPT command (A:) is similar to the INPUT 



command of BASIC, with two major exceptions. 
Character string variables do not have to be 
dimensioned nor do variables have to be included at 
all. In the event that no subcommand follows the 
ACCEPT command. Pilot will automatically place 
the character string in a special test register. In the 
event that the user wishes to type in a number then a 
numeric variable should follow the command. 
NUMERIC VARIABLES consist of a pound sign 
(ie. #) followed by a single letter; A through Z. 
Consequently, there are a maximum of 26 numeric 
variables. 

The MATCH command (M:) compares the 
character string of the special test register against 
the character strings in the subcommand. Character 
strings in the subcommand are separated from each 
other by commas. If a match occurs. Pilot notes 
which subcommand was the successful one (ie. first, 
second, third...). The JUMP ON MATCH 
command (JM:) recalls this notation and executes 
the corresponding subcommand. Subcommands are 
in the form of LABELs which are denoted by an 
asterisk (i.e. *) followed by one to several letters. 
Again, commas separate the subcommands. In the 
event that a match has occurred, Pilot will search the 
entire program for a LABEL that corresponds to the 
appropriate subcommand of the JUMP ON 
MATCH. Execution is then transferred to this point. 

The USE command (U: ) causes Pilot to once again 
search the entire program for a LABEL that matches 
the subcommand. Execution is as well transferred to 
this point. However, upon reaching an END 
command execution is returned back to the line 
directly below the originating USE command. The 
USE command is similar to the GOSUB command 
of BASIC. It calls subprograms, executes them and 
returns back to the main program. The JUMP 
command (J: ) is equivalent to a GOTO command in 
BASIC. It causes Pilot to search the entire program 
for a LABEL that matches the subcommand and 
transfers execution to that point. The END 
command (E:) indicates the terminating point of a 
program or subprogram. 

The GRAPHICS command (GR:) causes the 
computer to enter the graphics mode. The 
subcommand instructs Pilot on how to draw, fill, 
turn, change color, clear the screen or to quit the 
graphics mode and return to the text mode. The 
graphic techniques of Pilot are quite different from 
those of ATARI BASIC and further explanation will 



PAGE 114 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



be necessary. The two major differences lie in how 
the languages reference points and how they issue 
line drawing instructions. In BASIC the point (0,0) 
lies in the upper left hand corner of the screen. In 
Pilot the point (0,0) lies in the direct center of the 
screen. This conforms to the popular Cartesian 
coordinate system which is taught in geometry class. 
The visible portion of this grid accounts for 160 
points horizontally by 80 points vertically. This is 
equivalent to the visible number of points in 
BASIC'S GRAPHIC MODE 6 and 7. However, 
nonvisible points may be addressed in Pilot without 
causing an error statement. The second difference is 
how the languages issue drawing instructions. 
Instructions in BASIC are an absolute reference 
system, (ie. PLOT x,y and DRAWTO x,y). In Pilot 
the only absolute reference point is the initial one (ie. 
GR:GOTO -20,5) after that all references are 
relative to the last point. The last point is referred to 
as the "turtle", hence the nickname "turtle 
graphics". The subcommand TURN redirects the 
turtle. A positive value after the subcommand turns 
the turtle so many degrees clockwise. A negative 
value turns the turtle counterclockwise. The 
subcommand DRAW sketches a line. The value 
after the subcommand determines the length of the 
line. In ATARI BASIC every line length and turn 
requires a separate calculation. In the case of the 
latter, calculation could be quite complex. 

The SOUND command (SO:) allows you to 
create musical tones. Up to four subcommands, 
separated by commas, can be assigned. The 
subcommands are in the form of integer values from 
through 31. These values correspond to musical 
tones, where 1 represents low C and 31 represents 
high F. Zero turns the sound off. Four subcommands 
allow for four separate tones to be played at the same 
time. The PAUSE command (PA:) determines the 
length of play for the preceding tone. The sub- 
command is in the form of a positive value. Tones 
may be played in l/60th second intervals; 60 
pauses one second, 120 pauses two seconds, and so 
on. 

There are several other commands and special 
characters. We have described the ones essential to 
understanding the Pilot program referred to in the 
opening paragraph and have listed it in Figure 2. We 
will now go through this example step by step. 

Figure 2. 



10 JtLOOP 

12 TrMHAT C0L0RCRED,BLUE,YELL0H3 

13 0: 

14 M:RE,BLU,YE 

16 JM:«RED,»BLUE,«VELLOM 

18 WCONTINUE 

28 TiNUMBER OF 5IDE5 

38 A:»S 

32 T:LEMGTH OF SIDE 

34 A:ttL 

48 TiNUMBER OF DEGREES 



50 A:ttD 

85 U;«DRQM 

86 U:»SOUND 

98 J!»LOOP 

99 E: 

180 «DRAM 

130 GR: CLEAR 

140 GRIGOTO -28,5 

150 GR:ttS(DRAH ttL;TURN t»D) 

168 E: 

200 «SOUND 

210 50:13,17,28 

220 PA: 60 

230 50:13,18,22 

240 PA: 60 

250 50:15,28,24 

260 PA: 60 

270 50:13,17,28,25 

280 PA 1120 

290 50:8,8,8 

294 E: 

388 «RED 

310 GR:PEN RED 

320 J:#CONTINUE 

400 *BLUE 

410 GR:PEN BLUE 

420 J:)tCONTIHUE 

500 «VELLOM 

510 GR:PEN YELLOW 

520 J:«CONTINUE 

599 E: 



Line 12 types the question, "WHAT COLOR 
(RED, BLUE, YELLOW)". Line 13 accepts the 
user's reponse. Line 14 matches this response to the 
character strings, "RE", "BLU", and "YE". If a 
match exists, it notes which character string caused 
the match. Line 16 transfers execution to the 
corresponding label. Lines 20 and 30 type the ques- 
tion, "NUMBER OF SIDES" and accept the user's 
response as numeric variable #S. Lines 32 and 34 
and 40 to 50 behave in a similar fashion. Lines 85 
and 86 use two subprograms labeled "*DRAW" and 
"*SOUND". Line 90 causes Pilot to jump back to a 
statement labeled "*LOOP" on line 10. Line 99 
indicates the end of the main program. 

The main program illustrates two techniques of 
calling subprograms. The first technique is the 
JUMP ON MATCH method; line 16. The second 
technique is the USE method; lines 85 and 86. The 
first method causes the program to jump from line 
16 to one of three labeled statements, depending 
upon the preceding match; line 14. If the user's 
response was "RED" then Pilot will find a match in 
the first character string. This will cause execution to 
jump from line 16 to the labeled statement "*RED" 
on Une 300. Line 310 causes the turtle to select a red 
colored "PEN". Line 320 causes the execution to 
jump back to line 18 which is labeled 
"*CONTINUE". This just so happens to be the very 
next line after the JUMP ON MATCH command. 
Had the user responded "BLUE" or "YELLOW" 
then the turtle would have selected that 
corresponding "PEN" color. 

The second method of calling a subprogram is the 
USE command. Line 85 causes Pilot to transfer 
execution to the statement labeled "*DRAW" on 
line 100. Line 130 clears the screen while line 140 



positions the turtle on coordinates (-20,5). Line 150 
tells the turtle to draw a line of length #L, then turn 
#D degrees and repeat this pattern for #S number of 
times. The color of the pattern will depend upon 
which color "PEN" the turtle has selected. Line 160 
indicates the end of the subprogram and Pilot 
transfers execution back to the very next line after 
the USE command. 

The next command happens to be another USE 
command. This command causes the program to 
transfer execution to the statement labeled 
"*SOUND" on hne 200. Line 210 causes three 
musical tones to be played. The values 13, 17, and 20 
correspond with the musical notes of middle C, 
middle E, and middle G, respectively. Line 220 
causes the tones to be played for one second. Line 
230 through 280 are similar in fasion. Line 290 turns 
the sound off. Line 294 indicates the end of this 
subprogram. Pilot transfers execution back to the 
very next line after the second USE command. This 
line is a JUMP command which causes the entire 
process to repeat. 

For those of you that are not duly impressed with 
the Pilot language after reading this article, I have a 
little exercise for you. Part one of the exercise 
requires you to write a program similar to this one 
using ATARI BASIC. Sounds simple, doesn't it? The 
rules for writing the BASIC program limit you to 42 
lines with one statement per Une; just like the Pilot 
program. Part two of the exercise requires you to 
enter into a small race. In this race there will be a 
turtle (me) and a hare (you). Our programs will do 
the actual running. For judges we need to find two 
novice programmers. The race begins when you 
hand my turtle article over to one judge and you then 
start to explain your harebrained program to the 
other judge. The race is over when either judge 
completely understands the entire program and 
finishes the explanation by saying "Ah ha!" Who 
will you bet on, the turtle or the hare? D 



ISSUE tt9 CONTAINED ERRORS IN 2 PROGRAM 
LISTINGS. HERE ARE THE CORRECTIONS: 



DISKTOOL PART 2 iPG. 38, LISTING tt2) ! 



128 GOTO 2000 

330 SECNUH^VALtASl ;I F SECNUH<1 OR SECN 
UM> 728 THEN ? " 

mi": POP :GOTO 370 



INVALID SECTOR. RA 



348 SECHI=INTCSECNUM/2563 :5ECL0H=INT CS 
ECNUM-<SECHI«256)> : RETURN 



BURP! CPG. 62. BASIC LISTING) I 



150 TRAP 170 

168 READ ASPUT ttl,A:GOTO 160 





NEW FOR ATARI 

diskwiz 

COMPLETE & AFFORDABLE 
DISK EDITING REPAIR & DUPLICATION 
SYSTEM FOR ATARI OR PERCOM DRIVES 

• Fast M/L operation • Repair DOS/NON DOS sec- 
tors • On screen Hex/ASCII editing • Print out all 
modes to any printer • Dumps inverse & special 
Grafix Char to Epson Craftrax & NEC 8023A • Fast 
mapping, searches • File trace • Speed check and ad- 
just • Block move • Auto link pointers, file codes • 
VTOC bit map functions • Retrieves deleted files • Fix 
dup filename • Use nonformatable disks • Complete 
manual • Easy, fast, complete • Onboard 
disassembler • Even runs on 16K • Supports 1 or 2 
drives • FHEX-DEC-ASCII Converter • And More! 

All this for only $25. postpaid 

Don't waste your money on more expensive 
programs that don't deliver as much. 

48 hr. shipping for cashiers checks & money orders. 
Allow up to 3 weeks for personal checks, — C.O.D. 
add $2.00. Club & dealer enquiry encouraged. 

(213) 376-4105 
, 1906 Carnegie Lane "E 

lACROWARE Redondo Beach, CA 90278 

Alari, Epson, NEC & Percom, are trademarks of Atari, Inc., Epson America, NEC, 
Percom Data respectively. 



AUen 

Maci 






ATARI 



PAYROLL SOFTWARE 

FOR 

THE ATARI' 800 " 



Miles Payroll System™ is an advanced and comprehensive payroll accounting system 
designed for businesses today. Cumulative totals are maintained for each employee, as well as 
complete repofting. check writing, and W-2 reporting. Some features include: 

• Random access file organization for fast updating of individual records. 

• Allows weekly, biweekly, semimonthly or monthly pay periods. 

• Completely menu-driven and user-friendly 

• Regular, Overtime. Double time. SicK Holklay, Vacation Bonus and Commisskxi earning categories 

• Payrall deductions include Federal W/H Tax, State W/H Tax, City WH Tax, PICA, SDI. Group 
Insurance and 3 user-defined deductions. 

• Tax sheltered annuity deduction capability for IRAs and other tax shelters. 

• State and Federal Unemployment Insurance maintained 

• Complete file viewing and editing capability. 

• Maintains up to 50 employees. 

• Up to fO user-defined Worker's Compensation classifications. 

• Federal Tax tables may be changed in only 1 5 minutes each year by user when IRS changes tax. 

• Table method used for State and City Tax. allowing compatibility with any state's or city's tax 

• Produces 15 different reports, including W-2 Forms Report. 

• Checks calculated and printed automatically. 

• PROGRAM ENABLING MODULE" peotects valuable payroll infamatkm from unauthaized users 

• 3 user-defined payroll deductions to accommodate customized needs such as savings, profit 
sharing, tax shelters, pensions, etc. 

• Pay period, monthly, quarterly and yearly cumulative totals maintained for each employee. 

• Automatic input error detection and recovery protects system from user-generated errors. 

• Easy-to-follow, detailed, and comprehensive user's manual and tutorial leads the user step 
by step allowing anyone with little computer experience to easily operate the package 
Includes index. 

• Color, sound, and graphics utilized for user ease. 

• Maintains employee pay history. 

• Allows for manual payroll check writing. 

• Packaged in a handsome 3-ring deluxe pocketed binder with 3 diskettes and manual 

• Reasonable price. 

See your local store, or contact Miles Computing. 

jk A MILES COMPUTING 

/W^ m-i 71 36 Haskell Ave. #204 

/ J» llie& VanNuys, CA91406 

/ " (213)994-6279 

Atari is a registered trademark of Atari, Inc 

Miles Computing. MILES PAYROLL SYSTEM, PROGRAM ENABLING MODULE are trademarks 

of Miles Computing. Van Nuys. California. Not affiliated with Atari. Inc. 

$1 79.95. Requires 32K and two Atari* 810'" disk drivers Payment in U.S. funds required Willi 

order. California residents add 6.5% sales tax. COD. or prepayment only. Dealer inquires 

welcome. 



PAGE 116 



A.N.A.L.O.G. COMPUTING 



ISSUE 10 



INDEX TO ADVERTISERS 



ABBS 41 

Access Unlimited 11 

Adventure International 4, 37, 70, 

118, 119, BC 

Allen Macroware 115 

Alpha Systems 17 

Amulet 40 

A.N.A.L.O.G. Software 2, 3 

Austin Franklin 22 

Avalon Hill 72 

Bontek 75 

CAP Software 17 

CE Software 75 

Chameleon Comp 34 

Computability 19 

Don't Ask Software 54 

Dorsett 47 

Eastern House 55 

Educational Software 60, 69, 76 

English Software 84 

EPYX 40, 78 

Infocom 38, 39 

I.S 66 

Leading Edge 1 

LJK 67 



Macrotronics 25 

Micro Mainframe 7 

Microprose 27 

Mideastern Software 75 

Mighty Byte Computing 25 

Miles Computing 115 

MMG Micro Software 63 

Monarch Data Systems 34 

Mosaic INFC 

Newell Industries 42 

On-Line Computer Centers 31 

One-Stop Software 11 

OSS 91 

Percom 117 

Programmer's Institute, The 30,48 

Quality Software 58 

Quicksoft 21 

Rantom 43 

Roklan 83 

Royal Software 112 

Sector 1 25 

Sierra On-Line INBC 

Software Gallery 42 

SSI 77 

Tech Data 34 

Thesis 34 



We ARE Atari!® 

New Jersey's Largest Retailer of Atari 
Programs for 400/800 Models Over 40 
Programs Available from More y^ I Jll 
Than 60 Manufacturers. Send y^ U y vl V 
or Stop by for Our ^ ^"^ ^ ■ ^ 

Latest Catalog 



Only $2.00 (includes postage and handling) 
Fully Refundable as a $2.00 credit 
with your first purchase! 
Mail check or money order 
payable to Software Asylum to 
Software Asylum Catalog 
626 Roosevelt Avenue 
Carteret, N.J. 07008 
ATARI' is a ./'40K 

registered 
trademark of 
lATARI, INC 



"PLAY BALL" 

for Atari® 
by Cartho Games™ 
True-to-life Baseball based on Actual 
Statistics, so realistic you can even get rained out! 
Manage, call the plays, bunt, steal, pinch-hit. 
Comes complete with team data and score sheets. 

ONLY 



+6% tax NJ residents 



48K Board $149.95 
Fastchip $41.95 



We now RENT computer games 
- ask for details! 



Exclusively from 

$24.95 Disk H 

Software .SSVLUn, Inc. 

(201)969-1900 




We've Got More Than A 
Fond Attachment For Your 

ATARI 

We've Got A Disk Drive For $488. 

Percom Data Corporation believes your Atari* home computer is more than just 
fun and games. We believe you should be able to get a single-density, floppy-disk- 
system for your Atari 400 or 800 at a price that will take you into the future without 
knocking you into the next galaxy. 

Percom Data has been manufacturing disk-drive systems, and other accessories 
for personal computers since the mid-1970's and is the industry standard to 
follow when it comes to data separation and system compatibility 

The Percom Data AT-88 combines Percom Data quality and reliability at a price 
that is not a budget-buster 

The Percom Data AT-88 offers 88 Kbytes (formatted) in single-density, with plug- 
in ease of attachment to your Atari. The AT-88 has integral power supply, "no- 
patch" to Atari DOS and critical constant speed regulation. 

Take advantage of this low introductory price of $488 by calling Percom Data now 
to get more information, or the name of an authorized dealer nearby Call toll-free 

1-800-527-1222 



PEfiQOM QATA 



CORPORATION 

Expanding Your Peripheral Vision 



DRIVES • NETWORKS * SOFTWARE 



11220 Pagemill Road Dallas, Texas 75243 (214) 340-7081 
1-800-527-1222 



■Atari 400/eoO Is a trademark of ATARI. INC.. 




Good Golly! What A GAME! 

The original arcade game PREPPIE! will give you hours of toe-tickling fun. You take the controls, moving your young 
prepster about on the golf course. And what a golf course! It's unlike any you have ever played on before. There are dangers 
everywhere, and only you can keep the little Ivy Leaguer from a fate worse then Penn State! 

PREPPIE! is written in state-of-the-art machine language, is joystick compatible and fully utilizes the Atari's sound and 
graphics capabilities. Quite frankly, it will give you the most fun you can have on an Atari microcomputer. 

PREPPIE! is available at fine computer, book, and hobby stores everywhere. 
An exclusive game from 

To order, see your local dealer. If he does not 
have the program you want, then call 
1-800-327-7172 (orders only) or write for our 
free catalog. 




"My Atari never did things lil<e this before!" 
— Holister Townsend Wolfe 

"I had so much fun I almost biew my 
doughnuts." 

— Theodore Boston III 



dventuTff 

INTERNATIONAL 



Published by ADVENTURE INTERNATIONAL 

a division of Scott Adams, inc. 
BOX 3435 • LONGWOOD, FL 32750 • (305) 862-6917 



"I haven't had this much fun since Buffy 
and i went to Princeton tor the weekend." 
— Martha Vineyard 



OTHER won 
OTHEIWtEALITIES. 

, (FOR EX REBJ.EHC EP ADVENTURERS QNLYf^ 



ICntUJC by Jyym Pearson 



*^ Of CROWLEY K 
- MANOR 



ejJB 



Mf LEY MANOR 



<_. 



^^^^^_ -^v^ Cop>riKhl 19(11 

dl jffiSAciventute 

%PiM V^ff^ INTERNATIONAL 



PHICtS SUBJECT TO CHANGE 



1 {R^dventure 

' l,Vii^**^ INTERNATIONAL 



Stori AI>AM>t INI- 




by Jyym Pearsol^ 
You've sensed it before: nameless, unreasoning HIHHnHme unseen 
of things that scurry and scrabble through the shadows when the lights have 
been put out. How then will you fare when you face the Ultimate Evil; how will you 
possibly survive — THE CURSE OF CROWLEY tvlANOR? 

Jyym Pearson, author of ESCAPE FROM TRAAM and many other fine pro- 
grams, explores a new dimension in fright with a macabre tale of things that go 
bump in the night. THE CURSE OF CROWLEY MANOR is an excursion into mind- 
wrenching terror as you enter the dreaded Crowley Estate in search of answers to 
some pretty grisly questions. Fear fans take note: This is the stuff that 
nightmares are made of, so think twice before you approach. 

THE CURSE OF CROWLEY MANOR features Adventuring the way YOU like 
it, with plenty of clever plot twists, and a scenario that'll roll your socks up and 
down your legs! If Adventuring has become a bit tame for you lately, this is one 
sure-fire cure! THE CURSE OF CROWLEY MANOR will run on any ATARI 400 or 
800 with ample memory. We supply the software; you supply the atmosphere. 
(A well-lit room is optional, but recommended!) 




ATARI 16K TAPE 050-0108 



B©©. 



$24.95 




U_ 



lU_I 
by Jyym Pearson 
As soon as your small space cruiser began losing altitude, you knew you 
were in for serious trouble. You somehow walked away from a fiery landing that 
would've spelled certain death for a less fortunate man, but as one may quickly 
earn, there are fates far worse than a rapid death. . . 

You've managed to walk away intact from the awesome Curse of Crowley 
Manor. So far, so good. But will even your finely tuned Adventuring skills give you 
the necessary edge to . . . ESCAPE FROM TRAAM? 

ESCAPE FROM TRAAM is a detailed Adventure for the ATARI 400 or 800 
computer that defies the player to successfully search a bizarre alien world for a 
means of escape. The perils are many and the opportunities for survival are few. 
But for the clever Adventurer, a single opportunity is all that might be needed for 
a speedy exit from this hellish world. Are you up to the challenge? 

All of the traditional Adventure elements are in ESCAPE FROM TRAAM, 
including two-world command input, game save feature, and an e/i 
vocabulary. Add to this the impact of a dynamic storyline that'll give evun mt; 
most experienced Adventurer a real workout! ESCAPE FROM TRAAM — - a tine 
addition to any Adventure collection. 

ATARI 16K TAPE . . 050-0109 $24.95 



To order, see your local dealer. If he does not have the program, then call 
1-800-327-7172 (orders only please) or write for our free catalog. 

Published by ADVENTURE INTERNATIONAL 

a subsidiary of SnotI Adams, inc. 
BOX 3435 • LONGWOOf' r, ;'5o . (305) 830-8194 



• 



•:\^^: 



ATABI li • nsifWH W«l«i.«k ol ATAW Inc. • VIC20 ii i r««»S5SRSofCominodori, • APPLE i, . .r«l.m«k ot APPLE CompuW Inc. 




ATARI BASIC - LMnitns by Uting 

An excnlloni book lor iha baginnar, Many 

ihon piogramt nitd leunilnQ oxurcisei. 

Of(tar-No, 16<( 67-96 

amnfi liir tin ATARI Computor 

Thii book (|a>R(ibt» Mclvsnced piaQtanv 

mliig ladirilqiMt like plavocmisiile' 

giuptllci Hncl uw of Ills haiclwaFD -regulars, 

Comnim many rnady-lorun proBnimj in 

BASIC anil one cailod GUNFIGHT in 

niHchiiui lartgiiaga. 

Dt<tof-Nu. 162 £7.96 

Mtnw to program your ATAHI In 6B02 

ituctilnfl tanflutgi 

The lubjaci of thit book ii to loecli you 

tiQW 10 piogtom you' ATARI compuier 

in 6602 iTtachlnB lin^uage, Contains a 

laioa collection uf ptotjtamt. 

Orilw No. IBS Sa.fiS 

Ptogram Dfftcripltam (ATARI) 

Otdffr-No. 173 S6.aO 

FORTH on ttw ATARI-Laaming by 

Uting, Ordw-No. 170 &7.S6 



Boohi * Sotiwarit (or VIC-20 
3K RAM Exp. t 

Wordpioc»tor.8 K R AIri /f 4870 
Mtiling LIm. ISK RAM U 4883 
Trick* lor VICt iliook) #176 
riCTAC VIC ^4880' 

OAMEPACK ll3gimM)#4B81 
Dual Joyilick Initruct. ^4886 
INPUT/OUTPUT Progr #4886 
MiiuiiiMinblaF H 4896 

Tonntt. Squnti.Bnrak #4881 
RunltlforVlC #4804 



S19.9 
S14.Q 

s g.e 

fi 9,0 

£14.9 
E 9.9 
E 0.8 



B.9B 



VIC-20® ■ SINCLAIR/TIMEX'* 



OSI - APPLE® PET/CBM 



ELCOMP PUBLISHING, INC. 

53 Redrock Lane, Pomona CA 91766 / USA 

Phone {714} 623-8314 

Pavmont: Chock, nwney order, VISA. Muter Chergt, 

Etirocfisck 
Order* (ram outilila USA: add IK % thlppitig. 
CA-roiidenti wdd 6,1) % mh. 



Univsrtul ENperimenier Board lor the 
VIC-2D - (Save money with this great 
boatd). Thii board plUQi rigitt Into the 
CKfMnsion iloi ol the VIC-20. The lianrd 
contBlni a largo prototyping area tor vn<'< 
own circuit dniign and oKpansion. Thu 
oontuuciion article shows you how to 
build your own 3k F1AM eitpHnrtei and 
ROIi^lionrd. 
Order-Nn. 4844 Eia.QS 

Softwure for SINCLAIR ZX-81 ^nd 

TIMEX 1000 

Machiliit LiingiinQi) Monitor 

Order No, 33m $9.m 

MnllingLlM #2308 £10.05 



HortiMc^e 
Handbook 



Miciocompiiiuf Miiiili 

HaiKlbook ifl-lt. inm^i 

DBScriptions. pinnuls aiu! 

ipocilicaiions of Die moit 

pop.,1., mic,ap™«„»r> ^^^^•^,•^1'^^° 

and support chips. 

A MUST tot the haiclwaii 



Carr ar)ri Feeding ol itiu Coinmodortr PET 
fcighi diiipiors exploring ftT haiJware, 
Includes mpaif and i'merfacing inlormation. 
Proiirumminn trick: and ichemotici. 
Ordor No.150 8895 

Cotnptex Sound (jonerdtlon 
New tevited applir.aiioni manual lot Ihu 
TexBi inittomentj SN 76477. Complex 
Suiiiul Generator. 

Ordor-No, 164 C6.95 

SK Microwfl OASIC neforenco Manual 
O.itarNo, 151 M.95 

Expaiition Handbook for 6602 and 6802 
Qrdor No, 162 MJK 

„. BookilorOSI 

K<^ The Firii Book ol OHIO it 157 E7-95 
Tbo Second Book of OHIO « 158 E7,9B 
The Third Booh of OHIO J* 159 E7-95 
The Founh Book of OHIO it 160 fi9.96 
The Filth Book of OHIO It 161 S7.95 



thEcuiitDinpiilc 


BMi^ 







Order No. 29 



E14.g 



Bare boards from tho Custom APPLE Book 
^#606 S39.00 
EPROM Burner 'f607 S40.00 

8K EPHOM/RAM Bo.i.d tl 609 829,00 
Prototyping board .fB04 629,00 

Sloi repealei board //606 E49.00 

Order iwo boards 4ind qut the hook FREEI 



The Custom Apple + Other 
Uystaries - A complete quide 
to r.ustomiiing the Apple Soli- 
Wiiia and Hardware. 
OrdBrNo.680 B24.95 

We also slock the boards 
which are uud in the book 
"The Custom Apple..." 

Ibaie boards). 



ProgramminQ in 6S02 MKhifie 
Languogo on yadr PET t CBM 
2 complete Editor/Assembleii 
{Source code 3 hexdump * des- 
CTiption plus a poweiliil 
machine language mnniioi 
(hexdump) I. 

Ordor-No. 166 S19.9& 

Above auamblais on caisatte 
IBook No. 166 includttd). 
OrdsrNo. 4B1Z 839.96 




Programming in BASIC 
macnlna language with the 
ZX-SI 182) or TIMEX 1000. 
Or<itr No. 174 (booh) S8.S5 

Small Busin«n Programt 

Complete litlinQS for the 

business uwir. Inventory, invoice 

writing, mailing tin and much 

more. 

Order-No. 156 S14.90 





EDITOR/ASSBWBIER 



COMINQ SOONI 
ORDER N0W1 

iA Look in the luture 
with your ATARI 
(Astrology and how to 
do your own,horosco|w 
oniheATAmBOOJ 
Order-No. 171 S0.95 
Astro logy and Bio- 
-■^*»-= rhythm lor ATARI 
St^ -' (CBsi. ordiik). 
T> ' T| OrdwNo. 7223S29.95 
I Birth controKKnoui 
jt^ Oglno) Cass or dink 
^ Order No 722282895 
Programs from Book 
" 164 

The progtdms from 
book No. 164 0(1 dtbk 
(hook (ncludpil) 
Ordar-Na.?100E20 00 
Program I from Book 
No. 1fi2 00 dhlv (IwDk 
included) 

OrdfirMo.7,ii1 529 95 
GUNFIGHT 
This game iiuutis iwu 
ioysiicks. Armnnlitint 
sound, Comes on « 
booiatile CHSiBttfl " 

Order-No, 7207619 95 

Hardware ADO ONs 

lor ATARI 
EPROM BOARD 

(Cariridgi:) Holds 
two 4k EPROMs 
(2532), EPROMs 
noltncludod. 
"''''I' # 7043 E20, 

EPROM BOARD KIT 

Siimff ii dhovQ biit barn lioaril 
description. 
Order-No. 7224 
Printer Interface 

This consiruciion ariiclB comes with prin^ 
ted circuit board + software, You can use 
ThH EPSON printer without tha ATARI 
printflr imortace. (Gamepori 3 and 4). 
Order-No. 7211 819.95 

RS-232 Iniei-facB for your ATARI 400/800 
Soflwaie ' I'ONniii-ioi > conitr. unicle. 
Order-No. 8291 819.95 

EPROM BURNER for ATARI 400/800 
Works wiih (jiiniitpori . No .uliliiioniil 
powBr supplv.Conics conipl 
with softwiire (271fi.2733.2S3J). 
Orrior-No, 7042 8170.0(1 

EPHOIUI BURNER for ATARI 400/flOO Kit 
Primed ciicuiT Iki.imI iiicl, soltwiito iiiid 
exiunslve conslnicnon iirticle. 
Order-No. 7292 849,00 




I ^^^^ AT MAS 

I ^^ Maao -Assam bier lor 

ArAHi800/4aK, Onoof 

the most powerful editor aucmblers 

on tha markoi. Vsrsallle editor with 

scrollinu. Up to 17k ol source-coda. Very 

fast, translates 5k source-code In atwut 5 

sekonds. Source code can bo saved on disk 

ori-a(seito (InchideiATMONAT). 

Order No 7098 dith version S89.DO 

Order No 7909 carl ridgs van Ion 8129.00 

ATAS 

I II I A1MAS but without macro- 



This it a tracoi 

clebuggor) that Isti you 
explore the ATARI RAM/ 
ROM area. You can slop at pro- 
viously selected address, opcode, or 
operand. Also very valuable in under- 
staruling the mlcroprocassor. Includes 
ATMONA-1. 
OrdorNo, 7040 
Order-No. 7OB0 
ATMONA-1 

A powerful machine Inrigiiugo monitor. 
Oisassemhle, dump {hex and ASCMI. 
change nii-'mury locaiioo, lilock translai, 
fill memory blot^k, savu arxi load muchlnft 
language program.^, start proijrams. Prinior 
option via three dilforHni iru«rliicoi, 
Ordoi-No, 7022 casiotte version 81996 
Ordar-No. 7023 disk version 824 96 
Order-No. 7024 artrtdgtt variion 85900 



disk version 



FORTH 
from Elcomp 
Fhiblishmg.lnc. it an ex- 
tended FigForih-version, Editor 
anil \fQ package incliKled. Uijlriy 
package includes decompiler, sector 
copy. Hex-dump (ASCII), ATARI 
Flfehartdling, total graphic end sound, 
joystick program and player miiiite. 
Extremely powerdill 
Order-No. 7056 diik 839;9& 

Floating point fMCkue witli irigono- 
metric functions (0-90"!. 
Order-No. 7230 disk 820-95 

Lonrn-FORTH from Elcomp Piihli- 
ihing, Inc. 






> 





PMHMnoli 







^vc;'* 




k^. 



.tm^"' 



ifmii'i.l*^ 





Bi/' 



It's the same old story. Your kid 
boots up his favorite space swash- 
buckler and pleads, "Ah, come on. Dad, 
ust one game of Starstruck." 

Naturally, you resign yourself to humiliating defeat. AnotH 
day, another loss. 

Well, take revenge with Golf Challenge! : 

Practice by yourself, rain or shine, then challenge your kid or 
whole family to nine or 18 holes of championship golf -up to four at a time 
Soon you'll be saying, "C'mon, son, just one more game of Golf 
Challenge!" 

Order Golf Challenge cassette for Atari 400/800 from your local computer dealer for S24.95 
or directly from Sierra On-Line, Inc., Sierra On-LineBuMding, Coarsegold, CA .93.6 14 
(209) 683-6858. Add one dollar for shipping and handlinilM^EiMASTERCARD • CHjE 



m o m®/Mmm(m 




TX 



"N 



*^f*^-4t*. 



^■12sa^.■Jli'■l 



WHEN YOU SIT DOWN TO A 
SCOTT ADAMS' GRAPHIC ADVENTURE 



,n 




ANYTHI 



That's right — anything can happen, and it usually 
does! Because with a Scott Adams Graphic Adventure, the 
fantastic Is as close as your computer -- and your own 
fertile imagination. Each S.A.G.A. features the finest in hi- 
resolutlon graphics — graphics which compliment and 
enhance the classic text — and, they can be toggled on or 
off with a single keystroke, too. Plus, optional Votrax Type 
'N Talk™ and printer compatibility give you the flexibility to 
add new dimensions to your Adventuring — when you're 
ready. 

The Incomparable S.A.G.A. Series — experience the 
magic yourself. But be prepared for anything. 



Also, look for the Scott Adams Text 

Adventure Series on these fine computers: 

TRS-80 • COIVlMODORE VIC • NEC PC-8001 

TEXAS INSTRUMENTS 99/4 • CPIM Z-80 



A^dventure 

V^^i*^ INTERNATIONAL 



S-A-G-A. #1 — Adventureland (Skill Level: Moderate) 
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0201 $39.95 

ATARI 48K Disk 052-0201 $39.95 

S.A.G.A. #2 — Pirate Adventure (Skill Level; Beginner) 
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0202 $39.95 

ATARI 48K Disk 052-0202 $39.95 

S.A.G.A. #3 — Mission Impossible (Skill Level: Advanced) 
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0203 $39.95 

ATARI 48K Disk 052-0203 $39.95 

S.A.G.A. #6 — Strange Odyssey (Skill Level: Moderate) 
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0206 $39.95 
ATARI 48K Disk 052-0206 $39.95 

PRICES SUBJECT TO CHANGE 



To order, see your local dealer. If tie does not have ttie program, ttien call 
1-800-327-7172 (orders only please) or write for our free catalog. 
Publlstied by ADVENTURE INTERNATIONAL 

a subsidiap- -'''--" *-■ '-- 

BOX 3435 • LONGW